Список доступных программных сайтов, потерянных после обновления Eclipse

После нажатия кнопки "Проверить обновление", установки нескольких обновлений и нажатия "ОК" для перезапуска Eclipse список доступных сайтов программного обеспечения в окне "Установка" исчез.

Можно ли получить его как есть?

Если нет, как я могу его перестроить так, чтобы мои плагины были обновлены в будущем?

Я работаю с Eclipse 4.3.2 в Windows 7.

Ответ 1

Я столкнулся с той же проблемой на Win7-64bit после набора автоматических обновлений. Все настройки для "Доступные сайты программного обеспечения" были потеряны. Моя версия затмения после потери данных была luna 4.4.2. (не сейчас номер версии раньше, я установил eclipse-cpp-luna-SR1a-win32-x86_64_2014.zip).

Я установил этот сайт для получения "/Help/Install new software...". Диалог снова работает:

Eclipse-Project-Repository - http://download.eclipse.org/eclipse/updates/4.4

Чтобы получить репозиторий для другой версии eclipse, посмотрите здесь. Следуйте ссылке на вашу версию eclipse и найдите там "Репозиторий Eclipse p2".

Ответ 2

Я столкнулся с той же проблемой на Win10-64bit после набора автоматических обновлений. Все настройки для "Доступные сайты программного обеспечения" были потеряны. Репозиторий Eclipse p2
Чтобы обновить установку Eclipse до этого потока разработки, вы можете использовать репозиторий программного обеспечения в http://download.eclipse.org/eclipse/updates/4.5. Чтобы обновить свою сборку для использования этой конкретной сборки, вы можете использовать репозиторий программного обеспечения в http://download.eclipse.org/eclipse/updates/4.5/R-4.5.2-201602121500

Ответ 3

Исправлено в Neon

Хорошо, что доступные обновления сайтов выдержат обновление Eclipse на Neon. Но я все еще вижу эту проблему на Марсе и старше.

Исправление для Марса и более ранних версий

Существует простое изменение, которое исправило эту проблему для меня на Mars-, добавив параметр "-Djava.net.preferIPv4Stack = true" JVM в файл Eclipse.ini до запуск обновления:

-Djava.net.preferIPv4Stack=true

Обратите внимание, что это аргумент виртуальной машины, поэтому он должен идти после "-vmargs"

Итак, почему удаленные сайты программного обеспечения были удалены при обновлении?

Обновление Eclipse выполняется с помощью ProvisioningJob, который вызывает LoadMetadataRepositoryJob.runModal(), который, в свою очередь, вызывает MetadataRepositoryManager.loadRepository().

AbstractRepositoryManager.loadRepository() проверяет, действительно ли репозиторий действителен с помощью метода callcheckNotFound(). Если он не обнаружил, что репо не добавлено. preferIPv4 = true исправляет его.

Ответ 4

Попробуйте запустить Eclipse в качестве администратора. Таким образом, "проверка обновлений" должна работать.