Bagaimana saya harus mengonfigurasi pengaturan proxy agar Eclipse dapat mengunduh plugin baru?

178

Saya bekerja dengan Eclipse 3.7, pada lingkungan Windows XP di belakang proxy web.

Saya ingin menginstal plugin Groovy pada Eclipse Indigo yang baru di-unzip ( Eclipse Java EE Indigo M4 ). Saya menambahkan situs pembaruan ke Available Software Sitedaftar.

Tetapi Eclipse tidak dapat mengambil informasi dari plugin ini, dan dengan demikian instalasi tidak mungkin ...

Jika saya memasukkan Nativekonfigurasi General > Network Connections, yang tidak memiliki Authopsi yang dipilih, saya mendapatkan kesalahan berikut ketika saya mencoba untuk mencapai situs pembaruan:

HTTP Proxy Authentication Required: http://dist.codehaus.org/groovy/distributions/greclipse/snapshot/e3.7/content.xml
HTTP Proxy Authentication Required: http://dist.codehaus.org/groovy/distributions/greclipse/snapshot/e3.7/content.xml
Proxy Authentication Required

Jadi sekarang, saya pilih manual, saya mendefinisikan semua informasi yang benar untuk tiga skema (HTTP, HTTPS, SOCKS): proxy, port, Auth, Pengguna dan kata sandi. Namun, ketika saya mencoba untuk mencapai situs pembaruan, Eclipse menunjukkan bahwa diaFetching children of Groovy Eclipse , tetapi menjaga status ini pada 0% ...

Yang aneh adalah bahwa bahkan jika saya memasukkan kata sandi yang salah dalam General > Network Connectionskonfigurasi, saya tidak mendapatkan pesan kesalahan.

Pertanyaan saya:

  • Apa yang salah dalam konfigurasi saya?
  • Apakah ada cara lain untuk menentukan konfigurasi proxy?
  • Apakah ada cara untuk mendapatkan lebih banyak informasi, untuk mengetahui apa yang coba dilakukan Eclipse (yang workspace/.metadata/.logtidak mengandung informasi berguna)?

Masalah lain (minor) adalah modifikasi pengaturan proxy tampaknya hanya ditangani setelah Eclipse restart.


ps1: Menggunakan browser saya, saya dapat mencapai situs pembaruan, sehingga tidak diblokir oleh proxy.

ps2: Masalah ini tidak terkait dengan plugin ini, karena Eclipse berperilaku sama dengan plugin lainnya.

ps3: Ini adalah konten workspace/.metadata/.logketika saya memulai Eclipse dan mencoba menginstal plugin (semua log ini ditulis selama startup, tidak ada ketika Eclipse mencoba mengakses situs pembaruan)

!SESSION 2011-05-02 10:38:58.681 -----------------------------------------------
eclipse.buildId=I20101208-1300
java.version=1.6.0_20
java.vendor=Sun Microsystems Inc.
BootLoader constants: OS=win32, ARCH=x86, WS=win32, NL=fr_FR
Framework arguments:  -product org.eclipse.epp.package.jee.product
Command-line arguments:  -os win32 -ws win32 -arch x86 -product org.eclipse.epp.package.jee.product

!ENTRY org.eclipse.core.net 1 0 2011-05-02 10:39:02.228
!MESSAGE System property http.proxyHost is not set but should be XXX.

!ENTRY org.eclipse.core.net 1 0 2011-05-02 10:39:02.228
!MESSAGE System property http.proxyPort is not set but should be 8080.

!ENTRY org.eclipse.core.net 1 0 2011-05-02 10:39:02.244
!MESSAGE System property https.proxyHost is not set but should be XXX.

!ENTRY org.eclipse.core.net 1 0 2011-05-02 10:39:02.244
!MESSAGE System property https.proxyPort is not set but should be 8080.

!ENTRY org.eclipse.core.net 1 0 2011-05-02 10:39:02.244
!MESSAGE System property socksProxyHost is not set but should be XXX.

!ENTRY org.eclipse.core.net 1 0 2011-05-02 10:39:02.244
!MESSAGE System property socksProxyPort is not set but should be 8080.

!ENTRY org.eclipse.core.net 1 0 2011-05-02 10:39:02.244
!MESSAGE System property https.proxyHost is not set but should be XXX.

!ENTRY org.eclipse.core.net 1 0 2011-05-02 10:39:02.244
!MESSAGE System property https.proxyPort is not set but should be 8080.

!ENTRY org.eclipse.core.net 1 0 2011-05-02 10:39:02.244
!MESSAGE System property socksProxyHost is not set but should be XXX.

!ENTRY org.eclipse.core.net 1 0 2011-05-02 10:39:02.244
!MESSAGE System property socksProxyPort is not set but should be 8080.

!ENTRY org.eclipse.core.net 1 0 2011-05-02 10:39:02.244
!MESSAGE System property socksProxyHost is not set but should be XXX.

!ENTRY org.eclipse.core.net 1 0 2011-05-02 10:39:02.244
!MESSAGE System property socksProxyPort is not set but should be 8080.

!ENTRY org.eclipse.osgi 2 1 2011-05-02 10:39:02.447
!MESSAGE NLS missing message: TaskJobFactory_Refreshing_repository_configuration in: org.eclipse.mylyn.internal.tasks.ui.messages

Edit

Jika saya menambahkan baris berikut dalam eclipse.inifile saya ( karena itu ), itu berfungsi:

-Dorg.eclipse.ecf.provider.filetransfer.excludeContributors=org.eclipse.ecf.provider.filetransfer.httpclient
-Dhttp.proxyPort=8080
-Dhttp.proxyHost=XXX
-Dhttp.proxyUser=XXX
-Dhttp.proxyPassword=XXX
-Dhttp.nonProxyHosts=localhost|127.0.0.1

Tapi kenapa? Apakah masalah ini masih ada di Eclipse 3.7?

Romain Linsolas
sumber
saya punya pertanyaan serupa: bagaimana saya menginstal pembaruan eclipse dari server proxy (atau cache) di ubuntu? atau haruskah saya menanyakan ini di server ubuntu? thx
Enrique San Martín
3
Masalahnya ada bahkan di Eclipse Neon (2017-05-12)! 6 tahun telah berlalu: O
Ram
2
@Ram .... dan di Eclipse Oxygen (2017-09-21) !!
gior91

Jawaban:

330

Saya memiliki masalah yang sama. Saya memasang Eclipse 3.7 ke folder baru, dan menciptakan ruang kerja baru. Saya meluncurkan Eclipse dengan argumen -data untuk referensi ruang kerja baru.

Ketika saya mencoba untuk terhubung ke pasar untuk mendapatkan plugin SVN dan Maven, saya mendapatkan masalah yang sama dijelaskan dalam OP.

Setelah beberapa kali mencoba, saya menghapus pengaturan proxy untuk protokol SOCKS , dan saya dapat terhubung ke pasar.

Jadi solusi bagi saya adalah mengonfigurasi pengaturan manual untuk HTTP dan HTTPS proksi, menghapus pengaturan untuk SOCKS, dan restart Eclipse.

ayam jantan
sumber
Sama di sini, saya melaporkan bug dan diabaikan. Lelaki itu pada dasarnya mengatakan 'berhasil untukku'. Dalam 10 tahun terakhir, saya tidak pernah memiliki pengaturan proxy berfungsi seperti yang diharapkan. Saya harus menemukan beberapa pengaturan konfigurasi tersembunyi.
Berlin Brown
13
Memang, meskipun terlihat seperti nilai SOCKS benar-benar kosong, ini tiba-tiba berfungsi setelah (untuk konfigurasi MANUAL) saya menyoroti baris SOCKS, mengklik "Clear", lalu OK, lalu restart gerhana. Jika ini bukan bug, saya tidak tahu apa itu.
DanM
Terima kasih banyak. Saya tidak akan pernah berpikir bahwa ini bisa menjadi solusi. Saya berada di dalam firewall perusahaan dan mencoba memperbarui plugin cleacase selalu gagal. Ini sepertinya menyelesaikan masalah.
Ayusman
3
Saya juga mengalami masalah ini, dan mencoba langkah-langkah di atas. Tetapi itu masih tidak akan menyelesaikan. Saya harus mengedit [eclipse install directory] /configuration/.settings/org.eclipse.core.net.prefs dan mengatur ulang proxyData / SOCKS / hasAuth = false. Kemudian ikuti langkah-langkah dalam jawaban ini
Delicia Brummitt
Terimakasih! Ini hanya berfungsi untuk saya setelah me-reboot mesin Ubuntu saya. Tidak ada perubahan pengaturan yang saya buat akan meyakinkan sebaliknya.
Seth
39

Manual + nonaktifkan SOCKS tidak berfungsi untuk saya (masih mencoba menggunakan SOCKS dan proksi perusahaan saya menolaknya),
Native + berubah eclipse.ini bekerja untuk saya

-Dorg.eclipse.ecf.provider.filetransfer.excludeContributors=org.eclipse.ecf.provider.filetransfer.httpclient
-Dhttp.proxyHost=myproxy
-Dhttp.proxyPort=8080
-Dhttp.proxyUser=mydomain\myusername
-Dhttp.proxyPassword=mypassword
-Dhttp.nonProxyHosts=localhost|127.0.0.1

Pengaturan ini memerlukan restart IDE (kadang-kadang dengan -clean -refreshopsi baris perintah).
https://bugs.eclipse.org/bugs/show_bug.cgi?id=281472


Java8, Eclipse Neon3, server proxy lambat:

-Dorg.eclipse.ecf.provider.filetransfer.excludeContributors=org.eclipse.ecf.provider.filetransfer.httpclient4
-Dhttp.proxyHost=<proxy>
-Dhttp.proxyPort=8080
-Dhttps.proxyHost=<proxy>
-Dhttps.proxyPort=8080
-DsocksProxyHost=
-DsocksProxyPort=
-Dhttp.proxyUser=<user>
-Dhttp.proxyPassword=<pass>
-Dhttp.nonProxyHosts=localhost|127.0.0.1
-Dorg.eclipse.equinox.p2.transport.ecf.retry=5
-Dorg.eclipse.ecf.provider.filetransfer.retrieve.connectTimeout=15000
-Dorg.eclipse.ecf.provider.filetransfer.retrieve.readTimeout=1000
-Dorg.eclipse.ecf.provider.filetransfer.retrieve.retryAttempts=20
-Dorg.eclipse.ecf.provider.filetransfer.retrieve.closeTimeout=1000
-Dorg.eclipse.ecf.provider.filetransfer.browse.connectTimeout=3000
-Dorg.eclipse.ecf.provider.filetransfer.browse.readTimeout=1000
Mike
sumber
5
Hai, apakah bagian "Dorg.eclipse.ecf.provider.filetransfer.excludeContributors" diperlukan?
Daniil Shevelev
Apa perbedaan antara httpclient4dan httpclient?
m13r
2
Dikonfirmasi untuk oksigen.2 dan 3A.
DigiLive
Ini berfungsi untuk Eclipse Oxygen, cukup gunakan pengaturan jaringan Native dan tambahkan baris-baris itu di eclipse.ini
user3437460
14

Ada parameter eclipse.ini (sts.ini) yang dapat membantu:

-Djava.net.useSystemProxies=true

Banyak upaya yang terbuang untuk pengaturan sepele ini setiap kali saya mengubah lingkungan kerja ... Lihat salah satu bug terkait pada eclipse bugzilla .

Razvanone
sumber
3
Kalau-kalau itu mempengaruhi orang lain, menggunakan useSystemProxies=truedengan Eclipse Oxygen menyebabkan masalah bagi saya karena tidak benar mendeteksi variabel env https_proxy. Jadi, sementara laman http berfungsi dengan baik, laman https tidak mau memuat. Juga perhatikan bahwa setelah Anda mengatur pengaturan ini, pengaturan membaca dari lingkungan menimpa pengaturan proxy Eclipse.
Parisbre56
13

Hanya untuk menambah utas sebagai MUNGKIN solusi , saya menghadapi masalah serupa ketika mengembangkan sistem Linux yang berada di belakang firewall perusahaan. Namun, menggunakan mesin Windows XP, Eclipse dapat mengakses situs pembaruan yang berbeda dengan baik karena penyedia koneksi jaringan manual dan asli berfungsi dengan baik menggunakan proxy perusahaan.

Setelah tersandung selama beberapa waktu, saya menemukan sebuah diskusi tentang penggunaan NTLMv2 dan implementasi yang dapat ditemukan di http://cntlm.sourceforge.net/ . Kepada siapa pun yang memposting ini, saya memberikan banyak pujian karena membantu saya melewati masalah yang berjalan di Linux. Sebagai catatan, saya menggunakan Eclipse 3.6.2 / Helios pada distro Linux dan Windows.

Semoga berhasil menemukan solusi!

Michael
sumber
Saya sudah mencoba semua saran lainnya, tetapi tidak ada yang membantu. Menginstal CNTLM berhasil. Saya menggunakan Windows 7, JDK 1.7, Eclipse 4.3.2
slu
@lu Senang mendengar ini bekerja untuk Anda! Sampai saat ini, ini masih berfungsi untuk saya, bahkan dengan bermigrasi ke versi terbaru dari JDK dan Eclipse.
Michael
Menggunakan cntlm sebagai proxy lokal juga berfungsi untuk saya. Saya harus menonaktifkan kaus kaki, jika tidak localhost: port tidak akan berfungsi dengan luna eclipse.
Bort
12

akhirnya bekerja untukku!

Di Eclipse, Window> Preferences> General> Network Connections,
atur Active Provider ke Native
add to eclipse.ini :

-Djava.net.useSystemProxies=true
-Dhttp.proxyPort=8080
-Dhttp.proxyHost=myproxy
-Dhttp.proxyUser=mydomain\myusername
-Dhttp.proxyPassword=mypassword
-Dhttp.nonProxyHosts=localhost|127.0.0.1|192.168.*|10.*
-Dorg.eclipse.ecf.provider.filetransfer.excludeContributors=org.eclipse.ecf.provider.filetransfer.httpclient4
Naami
sumber
5

Saya menginstal HandyCache, di dalamnya menginstal tautan pada proksi umum saya.

Di IE set proxy 127.0.0.1.

Di Eclipse, Window> Preferences> General> Network Connections, atur Active Provider = Native.

Pepatah
sumber
0

Bagi saya, saya pergi ke \ eclipse \ configuration.settings \ org.eclipse.core.net.prefs mengatur sistem propertiProxiesEnabled menjadi true secara manual dan memulai kembali gerhana.

vuhoanghiep1993
sumber