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");

Utilize este resolver para as operações de resolução seguintes. Se o construir e depois chamar outro resolver predefinido, a definição fica no objeto não utilizado. Um teste Arquillian pode criar esta sessão do repositório depois de o Maven já ter iniciado o processo de teste, pelo que um download anterior a partir da linha de comandos não estabelece as suas entradas.

O ficheiro selecionado utiliza a sintaxe das definições do Maven. Dentro de settings, um percurso mínimo é:

<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>

Substitua o caminho, o endpoint e as exclusões previstas. O anfitrião não tem prefixo de URL. Se este resolver de teste puder alcançar um repositório público através de um intermediário público não autenticado, a lista de proxies HTTP fornece valores candidatos de anfitrião/porta; verifique o acesso ao repositório real. Forneça a autenticação do proxy através das definições suportadas; as contas de repositório/servidor autenticam um serviço diferente.

A implementação mantida carrega as entradas de proxy ativas do modelo de definições para o seletor da sessão do repositório. Os valores predefinidos também consideram localizações de definições de utilizador/globais; um ficheiro explícito ajuda quando um IDE, agente de compilação ou executor de testes tem outro diretório inicial.

Verifique o caminho das definições, o URL do repositório e se o artefacto precisava realmente de ser descarregado. Um repositório pré-aquecido pode esconder um percurso em falta. O resolver obtém artefactos de implementação; um cliente HTTP utilizado pelo teste faz outro pedido e precisa da sua própria configuração. Para testes Maven Surefire cujo cliente HTTP respeita as propriedades de proxy da JVM, configure as entradas de proxy da JVM de teste.

Artigos relacionados