Maven musí dosiahnuť na proxy plugin, kým ho môže spustiť
Pochopte problém prvého stiahnutia, keď plugin Mavenu sľubuje objavenie proxy, ale jeho vlastné artefakty nemožno vyriešiť.
Automatický proxy plugin znie ideálne pre notebook, ktorý sa pohybuje medzi sieťami. Je tu však jedna nepríjemná prvá požiadavka: Maven môže potrebovať proxy na získanie samotného pluginu.
Cieľ pluginu sa spustí až po tom, čo Maven dokáže vyriešiť a načítať jeho implementáciu a požadované artefakty. Objavovanie proxy v rámci tejto implementácie nepomôže sťahovaniu, ktoré zlyhá pred spustením implementácie. Použitie plne kvalifikovaných súradníc pluginu môže obísť hľadanie podľa predpony; nespôsobí však, že sa artefakt pluginu objaví v prázdnom lokálnom repozitári.
Starý plugin Autoproxy pre Maven ilustruje tento rozdiel. Jeho README opisuje objavovanie proxy cez proxy-vole, ale opisuje aj lokálnu inštaláciu pluginu pred volaním jeho cieľa. Berte to ako predpoklad tohto konkrétneho dizajnu, nie ako dôkaz, že Maven všeobecne číta nastavenia PAC prehliadača.
Dajte prvému riešeniu jasnú cestu
Pre sieť, kde prístup k repozitáru vyžaduje HTTP proxy, nakonfigurujte príslušnú aktívnu proxy v nastaveniach Mavenu, ktoré toto volanie používa. Pre povolené prvé stiahnutie z verejného repozitára vyberte HTTP kandidáta zo zoznamu HTTP proxy. Schválený interný repozitár dostupný bez vonkajšej cesty môže tiež vyriešiť problém počiatočného prístupu. Oba prístupy musia pokryť plugin a jeho závislosti, nielen závislosti aplikácie.
Predtým naplnený lokálny repozitár môže skryť požiadavku prvého stiahnutia. Úspech na notebooku vývojára nedokazuje, že nový účet CI môže spustiť rovnaké zostavenie. Pozrite sa na zlyhávajúci artefakt a fázu, kým zmeníte logiku detekcie pluginu.
Po načítaní pluginu sa neskoršie zlyhanie závislosti stáva samostatnou otázkou: či je zistená cesta správna a či aktívny transport Mavenu používa výsledné nastavenia. Pri rozhodovaní, či si automatickú detekciu ponechať, držte tieto dva body zlyhania oddelené.