Как предотвратить зависание Eclipse при запуске?

228

Я использую Eclipse 3.3 («Европа»). Периодически запуск Eclipse занимает чрезмерно много времени (возможно, навсегда). Единственное, что я вижу в журнале Eclipse:

    ! ENTRY org.eclipse.core.resources 2 10035 2008-10-16 09: 47: 34.801
    ! СООБЩЕНИЕ Рабочее пространство вышло с несохраненными изменениями в предыдущем сеансе; обновление рабочей области для восстановления изменений.

Поиск в Google показывает чье-то предложение, чтобы я удалил папку:

workspace\.metadata\.plugins\org.eclipse.core.resources\.root\.indexes

Это, похоже, не помогло.

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

Саймон Никерсон
источник
4
Решение в этом вопросе сработало для меня :)
Charith De Silva
Следует помнить одну вещь: когда Eclipse запускается, собирается или использует систему контроля версий, он сравнивает локальный каталог с репозиторием, он сканирует каталог (ы) проекта. Так что если вы пишете много выходных файлов локально, то Eclipse должен будет сканировать его, даже если он находится в рабочей области / your_project / tmp. Если количество файлов действительно велико (скажем, вы моделируете базу данных с локальными файлами), это может занять некоторое время. Это приведет к тому типу нестабильности, о котором люди сообщают здесь. Лучше всего размещать такие данные где-нибудь еще.
Марк Батлер

Ответы:

267

Возможно, это не точное решение вашей проблемы, но в моем случае я отследил файлы, с которыми Eclipse опрашивал SysInternals Procmon , и обнаружил, что Eclipse постоянно опрашивает довольно большой файл снимка для одного из моих проектов. Убрал это, и все запустилось нормально (хотя с рабочим пространством в состоянии, в котором оно было при предыдущем запуске).

Удаленный файл был:

<workspace>\.metadata\.plugins\org.eclipse.core.resources\.projects\<project>\.markers.snap
Джейсон
источник
2
Этот файл не существует в моей версии.
User1
71
2011-06-08: В Eclipse 3.6 (Helios) соответствующий файл выглядит так .metadata/.plugins/org.eclipse.core.resources/.snap. Я убил этот файл и прежде, «Затмение» снова запустилось. Я только заметил, что это дублирует ответ от joj.
Карл Смотриц
11
Удаление .metadata \ .plugins \ org.eclipse.core.resources \ .projects \ <project> \. Markers.snap мне не помогло. Мне пришлось удалить .metadata / .plugins / org.eclipse.core.resources / .snap
1.21 гигаватт
3
Я тоже должен был удалить .metadata / .plugins / org.eclipse.core.resources / .snap благодаря Донни Кумии 1,21 гигаватт
Эндрю Маккензи
2
Достаточно было просто удалить файл .snap @1.21gigawatts, чтобы он заработал.
marlonp33
233

пытаться:

  1. перейдите в <рабочее пространство> \. метаданные \ .plugins \ org.eclipse.core.resources
  2. удалить файл * .snap (или .markers в Indigo)
Сиддхарт
источник
3
Ты мой бог! Кстати, что это .snap обычно делает?
Михал Пенкала
1
Этот файл существовал для меня, а .metadata.plugins \ org.eclipse.core.resources.projects \ .markers.snap, упомянутый в другом ответе, - нет. Я, кажется, не потерял ничего критического из моей рабочей области, удалив этот файл.
User1
1
@ MichałPękała Мне также было интересно узнать об эффекте удаления этого файла, я нашел еще один вопрос, который немного отвечает на вопрос: что такое файлы моментальных
снимков
вау сработало для меня, хотя моя проблема была не такой же, но похожей. Eclipse открывается и показывает код, но как только я выполняю какое-либо действие, оно входит в бесконечный цикл. Я мог бы провести свою жизнь и не мог понять проблему. Спасибо друг.
Али
Eclipse должен сделать это автоматически при запуске, если / когда он обнаружит ошибку.
aroth
54

В моем случае (Юнона) я должен был сделать это:

find $WORKSPACE_DIR/.metadata/.plugins/org.eclipse.core.resources/.projects \
-name .indexes -exec rm -fr {} \;

Это добилось цели.

Сначала я думал, что это проблема с Mylyn (эти зависания произошли после того, как я начал использовать его общий веб-соединитель), но проблема появилась даже после удаления соединителя и даже удаления каталогов .mylyn.

Редактировать: мне также удалось перезапустить затмение, удалив только один файл:

rm $WORKSPACE_DIR/.metadata/.plugins/org.eclipse.e4.workbench/workbench.xmi

Это работало нормально, без каких-либо индексов. Только рабочий, на который я лично особо не возражаю.

Rafa
источник
Как вы определили, что .indexesфайлы были источником проблемы?
Джефф Аксельрод
Проба / ошибка, боюсь. Я подозревал, что это была ошибка Милина, поэтому я начал с каталога .mylyn безрезультатно. Затем я где-то читал о блокировке затмения при индексации, поэтому я пошел на это.
Рафа
7
Удаление файлов .markers у меня не сработало, но удаление .indexes и workbench.xmi снова загрузило мою рабочую область.
Натаниэль Вайсброт
Попробовал много вещей и удаление этого workbench.xmi сделало это для меня спасибо
Марк
3
Удаление $ WORKSPACE_DIR / .metadata / .plugins / org.eclipse.e4.workbench / workbench.xmi работало и для меня (я выполняю затмение Марса)
Ненад
36

Вы можете попробовать начать Eclipseсначала с -cleanопцией.

В Windows вы можете добавить -cleanопцию в ярлык для затмения. На Linuxвы можете просто добавить его при запуске Eclipseиз командной строки.

Ruben
источник
3
С моей проблемой на окнах (похожей, если не идентичной задающим вопросы) это не решило проблему.
Расселпирс
Одно из самых безвредных решений, которое вы должны попробовать в первую очередь.
13
35

Этот работает для меня:

Другой, и немного лучший обходной путь, который, очевидно, работает:

  1. Закрыть Eclipse.
  2. Временное перемещение оскорбительного проекта куда-то из рабочей области.
  3. Запустите Eclipse, подождите, пока загрузится рабочее пространство (оно должно).
  4. Закрой Eclipseснова.
  5. Переместите проект обратно в рабочее пространство.

Источник: Eclipse зависает при открытии рабочего пространства после обновления до GWT 2.0 / Google app engine 1.2.8.

Хенди ираван
источник
Спасибо @Hendy! это единственное решение, сработавшее для меня в Eclipse Luna.
Яссин ЭльБадауи,
Он делает свое дело, хотя и является неприятным решением для каждого момента затмения. В любом случае спасибо :)
Roberto14
В качестве примечания мне пришлось открыть другую версию Eclipse, загрузить рабочую область, закрыть ее, а затем снова открыть ту, которую я действительно хотел использовать.
rfsbsb
31

Я использовал, eclipse -clean -clearPersistedStateи это сработало для меня.

Предупреждение: это может удалить все проекты из рабочей области.

persianLife
источник
3
Примечание. Это также сбрасывает ваши перспективы рабочего пространства.
Альджинн,
Это сработало, но в моем случае все проекты были удалены.
mprabhat
13

У меня была похожая проблема с довольно большим рабочим пространством в 3.5 и нигде .snap-файлов нигде не было видно. « Windows-> Preferences-> General-> Запуск и завершение работы -> Обновить рабочее пространство при запуске», похоже, является параметром, связанным с рабочим пространством, и поэтому я не мог изменить его для рабочего пространства, которое вызывало зависание.

Запуск eclipseс параметром командной строки -refresh, а затем изменение настройки, кажется, помогает.

Даниил
источник
3
Это был способ, которым я заставил это работать. -refreshбит был ключевым для меня. Спасибо!
Крис Крычо
-чистка в одиночку не помогла, пришлось бежать -рефреш тоже
dschulten
12

Мне также повезло с удалением файлов * .snap. Мои были расположены в другом каталоге, чем указано в сообщениях (ниже).

<eclipse workspace>/.metadata/.plugins/org.eclipse.core.resources/.projects

Следовательно, следующий Unix CMD добился цели:

find <eclipse_workspace>/.metadata/.plugins/org.eclipse.core.resources/.projects  -name "*.snap" -exec rm -f {} \;
user555135
источник
8

Я перепробовал все ответы в этой теме, и ни один из них не работал для меня - ни файлы моментальных снимков, ни перемещение проектов, ни один из них.

Как ни странно, то, что сработало, это переместило все проекты и папку .metadata в другое место, запустив Eclipse, закрыв его, а затем переместив все обратно.

Кэтрин Дарроу
источник
5

Так как у меня нет файла .snao или .prefs в папке .metadata.plugins \ org.eclipse.core.resources (работает на OS X), мне удалось скопировать папку .project в old.project. , запустите Eclipse и проверьте

Windows -> Настройки -> Общие -> Запуск и завершение работы -> Обновить рабочее пространство при запуске

как предложено Мэттом Б. После этого я закрыл Eclipse, переименовал папку old.projects обратно в .projects и после этого все снова заработало нормально.

VHristov
источник
3

Я сделал это:

  1. cd to .metadata.plugins \ org.eclipse.core.resources
  2. удалить файл .snap
  3. Заметил, что вкладка «Прогресс» делает что-то каждые несколько секунд.
  4. Выходное затмение (НЕ ФАЙЛ | ПЕРЕЗАПУСТИТЕ ЗДЕСЬ, ИЛИ ВЫ ДОЛЖНЫ ВЕРНУТЬСЯ, ЧТОБЫ ШАГ 1 СНОВА)
  5. Снова откройте затмение.

Использование -refreshили -cleanпри запуске Eclipse не помогло.

User1
источник
3

В Mac OS X вы запускаете Eclipse, дважды щелкнув приложение Eclipse. Если вам нужно передать аргументы в Eclipse, вам нужно отредактировать файл eclipse.ini внутри пакета приложения Eclipse: выберите значок пакета приложения Eclipse, удерживая нажатой клавишу управления. Это представит вам всплывающее меню. Выберите «Показать содержимое пакета» во всплывающем меню. Найдите файл eclipse.ini в подпапке Contents / MacOS и откройте его в своем любимом текстовом редакторе для редактирования параметров командной строки.

добавьте: "-clean" и "-refresh" в начало файла, например:

-clean
-refresh
-startup
../../../plugins/org.eclipse.equinox.launcher_1.3.0.v20130327-1440.jar
--launcher.library
Одед Брейнер
источник
Это сработало для меня в Eclipse Luna, на OSX 10.10.3 (Yosemite). Спасибо Одед!
Скотт Преснелл
2

Убедитесь, что Workspace Launcher не открылся на вашем телевизоре или каком-либо другом втором мониторе. Это случилось со мной. Симптомы выглядят так же, как описанная проблема.

Исак Сван
источник
1

Windows -> Настройки -> Общие -> Запуск и завершение работы

Является ли Refresh workspace on startupпроверено?

Мэтт Б
источник
10
Это может быть трудно оценить, когда рабочее пространство Eclipse не откроется в первую очередь.
Расселпирс
Это не очень полезный комментарий, @rpierce, так как вы всегда можете указать другое рабочее пространство при запуске (конечно, при условии, что вы не настроили Eclipse по умолчанию для определенного рабочего пространства при запуске!). ** Вы всегда можете установить SHOW_WORKSPACE_SELECTION_DIALOG = false в org.eclipse.ui.ide.prefs, чтобы отменить это, если вы установили значение по умолчанию ** В предположении, что вы можете запускаться с другой рабочей областью, отметьте «Обновить рабочую область в флажок запуска, затем перезапустите Eclipse и вернитесь в исходное рабочее пространство. Это должно подтолкнуть вещи вперед.
user924272
1
@ user924272: Ну, <shrug> 9 человек не согласны с вашей оценкой моего комментария. Тем не менее, я с радостью признаю, что ваш комментарий более полезен ... и действительно может предоставить информацию, которую Мэтт В мог бы включить в свой ответ, что сделало бы его лучшим ответом. Но теперь информация, которую вы предоставили, здесь, и каждый может получить выгоду!
russellpierce
1

У меня просто были проблемы с запуском Eclipse. Это было исправлено путем удаления этого файла:

rm org.eclipse.core.resources.prefs

Я нашел в .settings


источник
1

UFT вызывает проблемы с RDz (на основе Eclipse) после установки. Эти предложения позволят обойти эту ситуацию даже при наличии переменных среды и соответствующих значений.

Примечание . Конфликтующее приложение не будет распознаваться в контексте Java, поскольку оно исключено из механизма поддержки Java.

  1. Воздействие. Исключает поддержку надстроек из-за перехвата конфликтующего исполняемого файла приложения с помощью редактора реестра Windows. Требование: приложение должно запускаться с помощью файла EXE, за исключением Java.exe / Javaw.exe / jpnlauncher.exe.

Инструкции :

а. Найдите исполняемое имя файла приложения, конфликтующее с поддержкой надстроек. Либо используйте диспетчер задач, либо Microsoft Process Explorer.

б. Откройте редактор реестра Windows.

с. Перейдите по адресу: HKEY_LOCAL_MACHINE \ ПРОГРАММНОЕ ОБЕСПЕЧЕНИЕ \ Mercury Interactive \ JavaAgent \ Modules Для 32-разрядных приложений в Windows x64: HKEY_LOCAL_MACHINE \ SOFTWARE \ Wow6432Node \ Mercury Interactive \ JavaAgent \ Modules

д. Создайте значение DWORD с именем конфликтующего исполняемого файла filenmae и установите значение 0.

Обновленный реестр

ddavisqa
источник
1

Удаление * .snap (у меня это * .markers), --clean-data или папка рабочей области перемещения, кажется, у меня не сработало.

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

adayoegi
источник
Это не дает ответа на вопрос. Как только у вас будет достаточно репутации, вы сможете комментировать любой пост ; вместо этого предоставьте ответы, которые не требуют разъяснений от автора . - Из Обзора
Вишва Дейв
1
@VishvaDave Разве не вопрос, задающий решение проблемы, которая застряла в Eclipse? Я думаю, что мы столкнулись с той же проблемой, и ответ сработал в моем случае.
Adayoegi
0

У меня не было файлов оснастки. Просматривая список установки меню помощи, по крайней мере, у 90% моих плагинов была деактивирована кнопка удаления, поэтому я не мог справиться с этим там. При запуске / выключении большинство плагинов не были перечислены. Вместо этого мне пришлось вручную удалять элементы из папки плагинов. Вау, время запуска для меня теперь намного быстрее. Так что, если все остальное не работает, и у вас есть плагины, которые можно использовать одноразово, это может быть наилучшим решением для использования.

demongolem
источник
0

К сожалению, ни одно из этих решений не помогло мне. В итоге мне пришлось создать новое рабочее пространство, а затем импортировать существующие проекты в новое рабочее пространство. К сожалению, при этом вы теряете свои настройки (поэтому не забывайте экспортировать настройки каждый раз, когда вы их меняете!)

Тодд
источник
0

У меня была очень похожая проблема с eclipse (Juno) в Fedora 18. В середине отладки сеанса Android затмение завершило сеанс отладки. Я попытался перезапустить затмение, но оно продолжало работать на заставке. Я попробовал различные предложения выше, но безуспешно. Наконец, я проверил сервис adb (мост отладки Android):

# adb devices
List of devices attached 
XXXXXX offline

Я знаю, что устройство Android все еще подключено, но оно сообщило об этом в автономном режиме. Я отключил устройство и выключил службу ADB:

# adb kill-server

Затем я подождал несколько секунд и перезапустил службу adb:

# adb start-server

И подключил мой андроид обратно. После этого затмение началось просто отлично.

Zoccadoum
источник
0

нет необходимости удалять весь файл метаданных. просто попробуйте удалить файл .snap из org.eclipse.core.resources в папке рабочей области.

ex. E:\workspaceFolder\.metadata\.plugins\org.eclipse.core.resources
user742102
источник
0

Следите за нулевыми байтами файлов .plugin в папке {WORKSPACE-DIR} /. Metadata / .plugins. Я просто удалил один там, и это исправило мои проблемы с зависанием.

Бо А
источник
0

В моем случае подобные симптомы были вызваны каким-то мошенническим репозиторием с кучей ненужных системных файлов.

Как упоминалось выше, универсальным средством защиты является использование Process Monitor для обнаружения файлов с ошибками. Полезно установить следующий двухстрочный фильтр:

  • Имя процесса - eclipse.exe
  • Имя процесса - javaw.exe
esteewhy
источник
0

У меня была похожая проблема после того, как я обновил затмение на Маверикс. В конце концов я обнаружил, что в каталоге плагинов eclipse в конце файла jar com.google.gdt.eclipse.login указаны номера версий. Я удалил номер версии из названия и все началось нормально :)

user1048661
источник
0

Это может помочь

В вашем затмении

1) Перейти на помощь

2) Нажмите Eclipse Marketplace

3) поиск - оптимизатор

установить "оптимизатор для затмения"

введите описание изображения здесь

Партф Питадия
источник
0

У eclipse -clean -refreshменя в Ubuntu работал на Eclipse 3.8.1

Kaidul
источник
0

Это также может быть вызвано этим ошибкой, если у вас Eclipse 4.5 / 4.6, версия плагина Eclipse Xtext старше v2.9.0 и конкретная конфигурация рабочей области.

Обходной путь должен был бы создать новое рабочее пространство и импортировать существующие проекты.

Чади
источник
0

Ну, у меня было похожее поведение при запуске затмения над X11. Я забыл поставить галочку enable X11 forwarding в моей замазке.

Мурашки
источник
0

В моем случае удаление папки .metadata рабочей области сработало. Я использую сервис Eclipse Luna Release 2.

zafar142003
источник