Cargar la configuración de proxy en el Maven Resolver de ShrinkWrap
Carga la configuración del proxy en el resolver que descarga las dependencias de prueba en lugar de depender de una invocación de Maven separada.
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");
Usa este resolver para las operaciones de resolución posteriores. Si lo construyes y luego llamas a otro resolver predeterminado, la configuración queda en el objeto sin usar. Una prueba de Arquillian puede crear esta sesión de repositorio después de que Maven ya haya iniciado el proceso de prueba, así que una descarga previa por línea de comandos no establece sus entradas.
El archivo seleccionado usa la sintaxis de configuración de Maven. Dentro de settings, una ruta mínima es:
<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>
Sustituye la ruta, el punto de conexión y las omisiones previstas. El host no tiene prefijo de URL. Si se permite que este resolver de prueba llegue a un repositorio público a través de un intermediario público no autenticado, la lista de proxies HTTP proporciona valores candidatos de host/puerto; comprueba el acceso al repositorio real. Proporciona la autenticación del proxy mediante la configuración admitida; las cuentas de repositorio/servidor autentican un servicio distinto.
La implementación mantenida carga las entradas de proxy activas del modelo de configuración en el selector de la sesión del repositorio. Los valores predeterminados también consideran las ubicaciones de configuración de usuario/global; un archivo explícito ayuda cuando un IDE, un agente de compilación o un ejecutor de pruebas tiene otro directorio de inicio.
Verifica la ruta de configuración, la URL del repositorio y si el artefacto realmente necesitaba descargarse. Un repositorio precalentado puede ocultar una ruta faltante. El resolver obtiene artefactos de despliegue; un cliente HTTP ejercitado por la prueba realiza otra solicitud y necesita su propia configuración. Para las pruebas de Maven Surefire cuyo cliente HTTP respeta las propiedades de proxy de la JVM, configura las entradas de proxy de la JVM de prueba.