Pengecualian yang disalin dari variabel shell NO_PROXY tidak otomatis valid di Maven. Daftar nonProxyHosts milik Maven menggunakan karakter pipa di antara entri, bukan bentuk dipisahkan koma yang umum pada variabel lingkungan.

Entri proxy dalam pengaturan pengguna yang dimaksud dapat terlihat seperti ini:

<settings>
  <proxies>
    <proxy>
      <id>outbound-proxy</id>
      <active>true</active>
      <protocol>http</protocol>
      <host>203.0.113.10</host>
      <port>8080</port>
      <nonProxyHosts>localhost|*.example.internal</nonProxyHosts>
    </proxy>
  </proxies>
</settings>

Ini adalah potongan pengaturan ilustratif di sekitar bagian proxies. Gabungkan dengan berkas pengaturan yang ada, bukan mengganti mirrors, servers, dan profiles yang tidak terkait. Gunakan alamat proxy sebenarnya. Jika proxy HTTP publik diizinkan untuk permintaan repositori, daftar proxy HTTP menyediakan pasangan host dan port yang mungkin.

Cocokkan host repositori

Terapkan pengecualian pada nama host yang benar-benar dihubungi Maven. URL repositori internal dan nama host unduhan publik mungkin memerlukan rute berbeda. Jangan masukkan seluruh URL repositori, termasuk path-nya, ke bidang untuk pola host.

Wildcard didukung, tetapi hindari pola yang terlalu luas hanya untuk menghilangkan satu kegagalan. Setelah perubahan, periksa nama internal yang dimaksud dan repositori publik secara terpisah.

Temukan pengaturan yang benar-benar digunakan

Maven dapat menggabungkan pengaturan global dan pengguna, dan pemanggilan dapat memilih berkas pengaturan alternatif. IDE dapat menggunakan instalasi atau konfigurasi Maven yang berbeda dari terminal. Mengedit berkas yang tidak pernah dibaca oleh pemanggilan yang gagal tidak akan mengubah rutenya.

Bendera aktif proxy juga penting. Host dan port yang ditulis benar dalam entri nonaktif tidak membuktikan bahwa Maven akan memilihnya.

Pisahkan kedua server

Kredensial proxy berada di entri proxy jika layanan itu memerlukannya. Kredensial repositori artefak privat berada di konfigurasi server yang sesuai. Memberikan token repositori tidak menjawab tantangan autentikasi proxy.

Jika permintaan masih gagal, catat URL repositori yang dipilih, respons atau kesalahan koneksi, dan sumber pengaturan yang efektif. Tentukan lebih dulu apakah permintaan seharusnya melalui proxy atau langsung; mengubah sintaks daftar dan endpoint sekaligus membuat hasil lebih sulit ditafsirkan.

Artikel terkait