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

Використовуйте цей resolver для подальших операцій resolve. Якщо створити його, а потім викликати інший типовий resolver, налаштування залишиться на невикористаному об'єкті. Тест Arquillian може створити цю сесію сховища після того, як Maven уже запустив тестовий процес, тому попереднє завантаження з командного рядка не встановлює його вхідні дані.

Вибраний файл використовує синтаксис налаштувань Maven. Усередині settings мінімальний маршрут:

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

Замініть шлях, кінцеву точку та передбачені обходи. Хост не має префікса URL. Якщо цьому тестовому resolver дозволено досягати публічного сховища через неавтентифікованого публічного посередника, список HTTP-проксі надає можливі значення хоста/порту; перевірте доступ до фактичного сховища. Укажіть автентифікацію проксі через підтримувані налаштування; облікові записи сховища/сервера автентифікують іншу службу.

Підтримувана реалізація завантажує активні записи проксі з моделі налаштувань у селектор сесії сховища. Типові значення також враховують розташування користувацьких/глобальних налаштувань; явний файл допомагає, коли IDE, агент збирання або тестовий запускач має іншу домашню теку.

Перевірте шлях налаштувань, URL сховища й те, чи справді артефакт потрібно було завантажити. Прогріте сховище може приховати відсутній маршрут. Resolver отримує артефакти розгортання; HTTP-клієнт, який використовує тест, робить інший запит і потребує власної конфігурації. Для тестів Maven Surefire, чий HTTP-клієнт поважає властивості проксі JVM, налаштуйте вхідні дані проксі тестової JVM.

Схожі статті