Как мне настроить параметры прокси, чтобы Eclipse мог загружать новые плагины?


178

Я работаю с Eclipse 3.7 в среде Windows XP за веб-прокси.

Я хочу установить плагин Groovy на недавно распакованный Eclipse Indigo ( Eclipse Java EE Indigo M4 ). Я добавил сайт обновления в Available Software Siteсписок.

Но Eclipse не может получить информацию об этом плагине, и, следовательно, установка не возможна ...

Если я ввожу Nativeконфигурацию, в General > Network Connectionsкоторой не Authвыбрана эта опция, я получаю следующую ошибку при попытке добраться до сайта обновления:

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

Итак, теперь я выбираю manual, я определяю всю правильную информацию для трех схем (HTTP, HTTPS, SOCKS): прокси, порт, аутентификация, пользователь и пароль. Однако, когда я пытаюсь добраться до сайта обновления, Eclipse указывает, что он есть Fetching children of Groovy Eclipse, но держу этот статус на 0% ...

Странно то, что даже если я введу неверный пароль в General > Network Connectionsконфигурации, я не получу сообщение об ошибке.

Мои вопросы:

  • Что не так в моей конфигурации?
  • Есть ли другой способ определить конфигурацию прокси?
  • Есть ли способ получить больше информации, узнать, что Eclipse пытается сделать ( workspace/.metadata/.logне содержит никакой полезной информации)?

Другая проблема (незначительная, однако) заключается в том, что изменения настроек прокси, похоже, обрабатываются только после перезапуска Eclipse.


PS1: используя мой браузер, я могу попасть на сайт обновлений, чтобы он не был заблокирован прокси-сервером.

PS2: эта проблема не связана с этим плагином, так как Eclipse ведет себя так же для других плагинов.

ps3: Здесь приведено содержимое того, workspace/.metadata/.logкогда я запускаю Eclipse и пытаюсь установить плагин (все эти журналы записываются во время запуска, ни один, когда Eclipse пытается получить доступ к сайту обновлений)

!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

редактировать

Если я добавлю следующие строки в свой eclipse.iniфайл ( из-за этого ), он будет работать:

-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

Но почему? Эта проблема все еще существует в Eclipse 3.7?


У меня есть похожий вопрос: как я устанавливаю обновление eclipse с прокси-сервера (или кеша) в Ubuntu? или я должен спросить это на сервере Ubuntu? THX
Энрике Сан Мартин

3
Проблема существует даже в Eclipse Neon (2017-05-12)!
Ram

2
@Ram .... и в Eclipse Oxygen (2017-09-21) !!
gior91

Ответы:


330

У меня такая же проблема. Я установил Eclipse 3.7 в новую папку и создал новое рабочее пространство. Я запускаю Eclipse с аргументом -data для ссылки на новое рабочее пространство.

Когда я пытаюсь подключиться к рынку, чтобы получить плагины SVN и Maven, у меня возникают проблемы, описанные в OP.

После нескольких попыток я очистил настройки прокси-сервера для протокола SOCKS и смог подключиться к рынку.

Таким образом, решение для меня состояло в том, чтобы настроить ручные настройки для прокси HTTP и HTTPS, очистить настройки для SOCKS и перезапустить Eclipse.


То же самое здесь, я сообщил об ошибке, и она была проигнорирована. Парень в основном сказал, что это «работает для меня». За последние 10 лет у меня никогда не было настроек прокси, как ожидалось. Я должен найти некоторые скрытые настройки конфигурации.
Берлин Браун

13
Действительно, хотя казалось, что значение SOCKS было полностью пустым, это неожиданно сработало после того, как (для конфигурации MANUAL) я выделил строку SOCKS, нажал «Очистить», затем OK, затем перезапустил затмение. Если это не ошибка, я не знаю что.
DanM

Большое спасибо. Я бы никогда не подумал, что это может быть решением. Я был внутри корпоративного брандмауэра и все время пытался обновить плагин cleacase. Кажется, это решает проблему.
Ayusman

3
У меня была эта проблема также, и попробовал шаги выше. Но это все равно не решит. Мне пришлось отредактировать [каталог установки eclipse] /configuration/.settings/org.eclipse.core.net.prefs и сбросить proxyData / SOCKS / hasAuth = false. Затем следуйте
инструкциям

Спасибо вам! Это сработало только после перезагрузки компьютера с Ubuntu. Никакие изменения настроек, которые я сделал, не убедили бы в этом.
Сет

39

Ручной + отключить SOCKS у меня не сработало (все еще пытался использовать SOCKS и прокси моей компании отказался),
Native + изменил eclipse.ini у меня работал

-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

Эти параметры требуют перезапуска IDE (иногда с параметрами -clean -refreshкомандной строки).
https://bugs.eclipse.org/bugs/show_bug.cgi?id=281472


Java8, Eclipse Neon3, медленный прокси-сервер:

-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

5
Привет, требуется ли часть "Dorg.eclipse.ecf.provider.filetransfer.excludeContributors"?
Даниил Шевелев

В чем разница между httpclient4и httpclient?
m13r

2
Подтверждено для кислорода.2 и 3А.
DigiLive

Это работает для Eclipse Oxygen, просто используйте собственные настройки сети и добавьте эти строки в eclipse.ini
user3437460

14

Существует параметр eclipse.ini (sts.ini), который может помочь:

-Djava.net.useSystemProxies=true

Каждый раз, когда я меняю рабочую среду, я тратил много усилий на эту тривиальную настройку ... Смотрите одну из связанных ошибок в eclipse bugzilla .


3
Просто на случай, если это повлияет на кого-то еще, использование useSystemProxies=trueс Eclipse Oxygen вызвало у меня проблемы, потому что он не правильно определил переменную env https_proxy. Таким образом, хотя http-страницы работали нормально, https-страницы не загружались. Также обратите внимание, что после установки этого параметра параметры, считываемые из среды, переопределяют параметры прокси-сервера Eclipse.
Parisbre56

13

Просто чтобы добавить в поток как ВОЗМОЖНОЕ решение, я столкнулся с аналогичной проблемой при разработке системы Linux, которая была защищена брандмауэром компании. Тем не менее, используя компьютер с Windows XP, Eclipse смог получить доступ к различным сайтам обновлений просто отлично, так как как ручной, так и нативный провайдеры сетевых подключений работали просто отлично, используя прокси-сервер компании.

Спустя некоторое время, я наткнулся на дискуссию об использовании NTLMv2 и реализации, которую можно найти на http://cntlm.sourceforge.net/ . Кто бы ни написал это, я очень благодарен за то, что это помогло мне преодолеть проблему, связанную с Linux. В качестве примечания я использовал Eclipse 3.6.2 / Helios как в дистрибутивах Linux, так и Windows.

Желаем удачи в поиске решения!


Я перепробовал все другие предложения, но ничего не помогло. Установка CNTLM сделала свое дело. Я на Windows 7, JDK 1.7, Eclipse 4.3.2
slu

@SL рад слышать, что это сработало для вас! На сегодняшний день это все еще работает для меня, даже с переходом на последние версии JDK и Eclipse.
Майкл

Использование cntlm в качестве локального прокси-сервера также работает для меня. Мне тоже пришлось отключить носки, иначе localhost: порт не будет работать с luna eclipse.
Борт

12

наконец работа для меня!

В Eclipse, «Окно»> «Установки»> «Основные»> «Сетевые подключения»,
установите для «Активного поставщика» значение « Собственное
добавление» в 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

5

Я установил HandyCache, в них установил ссылку на мой общий прокси.

В IE установлен прокси 127.0.0.1.

В Eclipse, «Окно»> «Установки»> «Основные»> «Сетевые подключения» установите Active Provider = Native.


0

Для меня я иду в \ eclipse \ configuration.settings \ org.eclipse.core.net.prefs, устанавливаю для свойства systemProxiesEnabled значение true вручную и перезапускаю eclipse.

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.