import org.jboss.shrinkwrap.resolver.api.maven.Maven;
import org.jboss.shrinkwrap.resolver.api.maven.MavenResolverSystem;

MavenResolverSystem resolver = Maven.configureResolver()
    .fromFile("/path/to/test-settings.xml");

Brug denne resolver til efterfølgende resolve-handlinger. Hvis du opretter den og derefter kalder en anden standardresolver, bliver indstillingen på det ubrugte objekt. En Arquillian-test kan oprette denne repositoriesession, efter at Maven allerede har startet testprocessen, så en tidligere kommandolinjedownload etablerer ikke dens input.

Den valgte fil bruger Maven-indstillingssyntaks. Inde i settings er en minimal rute:

<proxies>
  <proxy>
    <id>test-network</id>
    <active>true</active>
    <protocol>http</protocol>
    <host>proxy.example.net</host>
    <port>8080</port>
    <nonProxyHosts>localhost|*.internal.example.net</nonProxyHosts>
  </proxy>
</proxies>

Erstat stien, slutpunktet og de tilsigtede omgåelser. Værten har ingen URL-præfiks. Hvis denne testresolver må nå et offentligt repository via en uautentificeret offentlig mellemmand, leverer HTTP-proxylisten kandidatværdier for vært/port; kontroller adgangen til det faktiske repository. Angiv proxygodkendelse via understøttede indstillinger; repository-/serverkonti godkender en anden tjeneste.

Den vedligeholdte implementering indlæser aktive proxyindgange fra indstillingsmodellen i repositoriesessionens vælger. Standarder overvejer også bruger-/globale indstillingsplaceringer; en eksplicit fil hjælper, når en IDE, build-agent eller testkører har en anden hjemmemappe.

Kontroller indstillingsstien, repository-URL'en og om artefakten faktisk skulle hentes. Et opvarmet repository kan skjule en manglende rute. Resolveren henter deployment-artefakter; en HTTP-klient, som testen bruger, sender en anden anmodning og har brug for sin egen konfiguration. For Maven Surefire-tests, hvis HTTP-klient respekterer JVM-proxyegenskaber, skal du konfigurere test-JVM'ens proxyinput.

Relaterede artikler