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 تست را پیکربندی کنید.

مقالات مرتبط