Eclipse зависает при загрузке верстака
Мое затмение перестает загружать верстак. Я уже пробовал начинать с./eclipse --clean
При запуске из консоли выдает следующее исключение:
java.lang.NullPointerException
at org.eclipse.core.internal.runtime.Log.isLoggable(Log.java:101)
at org.eclipse.equinox.log.internal.ExtendedLogReaderServiceFactory.safeIsLoggable(ExtendedLogReaderServiceFactory.java:57)
at org.eclipse.equinox.log.internal.ExtendedLogReaderServiceFactory.logPrivileged(ExtendedLogReaderServiceFactory.java:158)
at org.eclipse.equinox.log.internal.ExtendedLogReaderServiceFactory.log(ExtendedLogReaderServiceFactory.java:146)
at org.eclipse.equinox.log.internal.ExtendedLogServiceFactory.log(ExtendedLogServiceFactory.java:65)
at org.eclipse.equinox.log.internal.ExtendedLogServiceImpl.log(ExtendedLogServiceImpl.java:87)
at org.eclipse.equinox.log.internal.LoggerImpl.log(LoggerImpl.java:54)
at org.eclipse.core.internal.runtime.Log.log(Log.java:60)
at org.tigris.subversion.clientadapter.javahl.Activator.isAvailable(Activator.java:92)
at org.tigris.subversion.clientadapter.Activator.getAnyClientAdapter(Activator.java:81)
at org.tigris.subversion.subclipse.core.SVNClientManager.getAdapter(SVNClientManager.java:145)
at org.tigris.subversion.subclipse.core.SVNClientManager.getSVNClient(SVNClientManager.java:92)
at org.tigris.subversion.subclipse.core.SVNProviderPlugin.getSVNClient(SVNProviderPlugin.java:425)
at org.tigris.subversion.subclipse.core.status.NonRecursiveStatusUpdateStrategy.statusesToUpdate(NonRecursiveStatusUpdateStrategy.java:53)
at org.tigris.subversion.subclipse.core.status.StatusCacheManager.refreshStatus(StatusCacheManager.java:273)
at org.tigris.subversion.subclipse.core.resourcesListeners.FileModificationManager.refreshStatus(FileModificationManager.java:179)
at org.tigris.subversion.subclipse.core.resourcesListeners.FileModificationManager.resourceChanged(FileModificationManager.java:128)
at org.eclipse.core.internal.events.NotificationManager$1.run(NotificationManager.java:291)
at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:42)
at org.eclipse.core.internal.events.NotificationManager.notify(NotificationManager.java:285)
at org.eclipse.core.internal.events.NotificationManager.broadcastChanges(NotificationManager.java:149)
at org.eclipse.core.internal.resources.Workspace.broadcastPostChange(Workspace.java:395)
at org.eclipse.core.internal.resources.Workspace.endOperation(Workspace.java:1530)
at org.eclipse.core.internal.resources.InternalWorkspaceJob.run(InternalWorkspaceJob.java:45)
at org.eclipse.core.internal.jobs.Worker.run(Worker.java:54)
Останавливается при загрузке com.android.ide.eclipse.adt
Что не так с моим верстаком?
21 ответ
DISCLAIMER: THIS WILL DELETE ALL OF YOUR ECLIPSE WORKSPACE SETTINGS AND YOU WILL HAVE TO RE-IMPORT ALL YOUR PROJECTS, THERE ARE LESS DESTRUCTIVE ANSWERS HERE
Попробуйте следующее:
Удалите папку .metadata в вашем локальном рабочем пространстве (это то, что у меня сработало). Кажется, что он содержит файл.LOCK, который, если он не закрыт должным образом, не позволяет правильно запустить eclipse. В системах на основе Unix вы можете ввести в командной строке следующее;
rm -r workspace/.metadata
Удалите каталог .eclipse в вашем домашнем каталоге. Запустить затмение. Если это не сработает,
Откройте затмение под другой учетной записью пользователя. Если он загружается, вы знаете, что проблема связана с вашей учетной записью, а не с вашей установкой Eclipse.
Процедура, показанная на http://off-topic.biz/en/eclipse-hangs-at-startup-showing-only-the-splash-screen/ сработала для меня:
- cd.metadata /.plugins
- mv org.eclipse.core.resources org.eclipse.core.resources.bak
- Начать затмение. (Должно отображаться сообщение об ошибке или пустое рабочее пространство, потому что проект не найден.)
- Закройте все открытые вкладки редакторов.
- Выходное затмение.
- rm -rf org.eclipse.core.resources (удалить вновь созданный каталог.)
- mv org.eclipse.core.resources.bak / org.eclipse.core.resources (восстановить исходный каталог.)
- Начните затмение и начните работать.:-)
В других ответах:
eclipse -clean -clearPersistedState
упоминается - что, кажется, имеет тот же или даже лучший эффект.
Вот скрипт для MacOS (с использованием Macports) и Linux (протестирован на Ubuntu с Eclipse Equinox), чтобы начать с необязательного уничтожения работающего затмения. Возможно, вы захотите адаптировать скрипт к вашим потребностям. Если вы добавляете новые платформы, пожалуйста, отредактируйте скрипт прямо в этом ответе.
#!/bin/bash
# WF 2014-03-14
#
# ceclipse:
# start Eclipse cleanly
#
# this script calls eclipse with -clean and -clearPersistedState
# if an instance of eclipse is already running the user is asked
# if it should be killed first and if answered yes the process will be killed
#
# usage: ceclipse
#
#
# error
#
# show an error message and exit
#
# params:
# 1: l_msg - the message to display
error() {
local l_msg="$1"
echo "error: $l_msg" 1>&2
exit 1
}
#
# autoinstall
#
# check that l_prog is available by calling which
# if not available install from given package depending on Operating system
#
# params:
# 1: l_prog: The program that shall be checked
# 2: l_linuxpackage: The apt-package to install from
# 3: l_macospackage: The MacPorts package to install from
#
autoinstall() {
local l_prog=$1
local l_linuxpackage=$2
local l_macospackage=$3
echo "checking that $l_prog is installed on os $os ..."
which $l_prog
if [ $? -eq 1 ]
then
case $os in
# Mac OS
Darwin)
echo "installing $l_prog from MacPorts package $l_macospackage"
sudo port install $l_macospackage
;;
# e.g. Ubuntu/Fedora/Debian/Suse
Linux)
echo "installing $l_prog from apt-package $l_linuxpackage"
sudo apt-get install $l_linuxpackage
;;
# git bash (Windows)
MINGW32_NT-6.1)
error "$l_prog ist not installed"
;;
*)
error "unknown operating system $os"
esac
fi
}
# global operating system variable
os=`uname`
# first set
# eclipse_proc - the name of the eclipse process to look for
# eclipse_app - the name of the eclipse application to start
case $os in
# Mac OS
Darwin)
eclipse_proc="Eclipse.app"
eclipse_app="/Applications/eclipse/Eclipse.app/Contents/MacOS/eclipse"
;;
# e.g. Ubuntu/Fedora/Debian/Suse
Linux)
eclipse_proc="/usr/lib/eclipse//plugins/org.eclipse.equinox.launcher_1.2.0.dist.jar"
eclipse_app=`which eclipse`
;;
# git bash (Windows)
MINGW32_NT-6.1)
eclipse_app=`which eclipse`
error "$os not implemented yet"
;;
*)
error "unknown operating system $os"
esac
# check that pgrep is installed or install it
autoinstall pgrep procps
# check whether eclipse process is running
# first check that we only find one process
echo "looking for $eclipse_proc process"
pgrep -fl "$eclipse_proc"
# can't use -c option on MacOS - use platform independent approach
#eclipse_count=`pgrep -cfl "$eclipse_proc"`
eclipse_count=`pgrep -fl "$eclipse_proc" | wc -l | tr -d ' '`
# check how many processes matched
case $eclipse_count in
# no eclipse - do nothing
0) ;;
# exactly one - offer to kill it
1)
echo "Eclipse is running - shall i kill and restart it with -clean? y/n?"
read answer
case $answer in
y|Y) ;;
*) error "aborted ..." ;;
esac
echo "killing current $eclipse_proc"
pkill -f "$eclipse_proc"
;;
# multiple - this is bogus
*) error "$eclipse_count processes matching $eclipse_proc found - please adapt $0";;
esac
tmp=/tmp/eclipse$$
echo "starting eclipse cleanly ... using $tmp for nohup.out"
mkdir -p $tmp
cd $tmp
# start eclipse with clean options
nohup $eclipse_app -clean -clearPersistedState&
./eclipse -clean -refresh
как упоминалось в комментарии Сулай 20 декабря '12 в 12:46, это сработало для меня.
Однако в Mac OS X мне пришлось выяснить, как добраться до./eclipse
Вот решение:
cd Eclipse.app/Contents/MacOS/
Спасибо Эндрю комментарий для этого поста: /questions/3104430/kak-zapustit-zatmenie-iz-komandnoj-stroki-na-macos-s-imenem-rabochego-prostranstva/3104444#3104444
Лучшее решение, которое я нашел, это удалить этот файл: workspace/.metadata/.plugins/org.eclipse.e4.workbench/workbench
Нет необходимости удалять все метаданные. просто попробуйте удалить файл .snap в org.eclipse.core.resources в папке рабочей области ex.
workspaceFolder.metadata.plugins \ org.eclipse.core.resources
Я решил удалить *.snap из каталога dir рабочей области (и всех его подкаталогов):
метаданные \.plugins\*. оснастка
Довольно старый вопрос, но самый простой ответ еще не опубликован.
Вот:
1) В [workspace]\.metadata\.plugins\org.eclipse.e4.workbench
удалять workbench.xmi
файл.
В большинстве случаев этого достаточно - попробуйте загрузить Eclipse.
Тем не менее, вы должны заново настроить ваши конкретные параметры перспективы (если таковые имеются)
2) Теперь возникают проблемы со строительными проектами, которые работают отлично? По моему опыту помогают следующие шаги:
- снимите флажок Проекты-> Построить автоматически
- переключиться на перспективу Java (если еще нет): Окно -> Открыть перспективу -> Java
- найдите представление Проблемы или откройте его: Окно -> Показать представление -> Проблемы
- щелкните правой кнопкой мыши по группам проблем и выберите Удалить. Обязательно удалите ошибки Lint
- очистить рабочее пространство: Проект -> Очистить... с параметром Очистить все проекты
- проверьте Проекты-> Построить автоматически
- если проблемы сохраняются для некоторых проектов: щелкните правой кнопкой мыши проект, выберите " Свойства" -> Android и убедитесь, что выбрана соответствующая цель сборки проекта
3) Мне всегда было достаточно. Но если у вас все еще есть проблемы - попробуйте рекомендации @george post
Следующая процедура работала на моих MacOS (Mavericks) и Eclipse Luna 4.4.1:
Удалите файл.snap по пути "workspaceFolder".metadata.plugins\org.eclipse.core.resources\
Если вы не знаете, как перейти к этой папке на Mac, нажмите Cmd + Shift + G (Перейти к папке) и введите полный адрес, по которому вы хотите перейти.
Удаление рабочей области /.metadata/.lock и запуск затмения с -clean -refresh работали для меня.
Похоже, у вас, возможно, возникла эта проблема:
Вы должны удалить папку org.eclipse.e4.workbench в metadata.plugins\, которую вы можете найти в папке вашего рабочего пространства. Удаление этой папки решило проблему для меня, надеюсь, это поможет кому-то еще!
У меня была эта проблема в Windows 7, это то, что исправило ее для меня.
http://letsgetdugg.com/2009/04/19/recovering-a-corrupt-eclipse-workspace/
cd ~ / Documents / workspace /.metalog /.plugins
rm -rf org.eclipse.core.resources
Также может помочь попытаться загрузить и сохранить рабочее пространство с более новой версией Eclipse:
Я использую затмение 3.8. При запуске заставка зависла. В журнале не было сообщений об ошибках. Что помогло, так это открыть рабочее пространство с помощью eclipse 4.2.2. После открытия и закрытия рабочей области я смог загрузить ее снова с 3.8.
В вашей рабочей области вы найдете имя скрытой папки.metadata, в котором вы найдете другую скрытую папку ".mylyn", удалите ее и очистите свой хлам, перейдите в диспетчер задач, остановите процесс Eclipse и снова запустите Eclipse, на этот раз он будет работать.
Наслаждайтесь!
Вот менее разрушительный метод, который работал для меня:
Я на Windows-машине с копией Spring Tool Suite (расширение Eclipse), которую я запускаю из случайного каталога. В командной строке мне нужно было перейти в каталог, в котором находились мои STS.exe
и запустить: STS.exe -refresh
,
После этого я мог открыть свой Eclipse обычным способом (который был через прикрепленный значок на панели задач).
После некоторого изучения дат файлов я решил ту же проблему (которая является случайной периодически возникающей проблемой в моем Kepler), просто удалив следующий файл в моей локальной рабочей области: .metadata.plugins\org.eclipse.jdt.core\variableAndContainers.dat
с незначительным влиянием на восстановление рабочего пространства.
Я надеюсь, что это может помочь кому-то еще...
Получите резервную копию папки.metadata/.plugin/org.eclipse.core.resources, затем удалите эту папку и запустите eclipse. Это должно запустить рабочее пространство, но все проекты исчезнут, так как org.eclipse.core.resources хранит список всех проектов.
Затем правильно закройте eclipse и скопируйте обратно файл org.eclipse.core.resources из архива в папку.metadata/.plugins/, переопределяя существующий.
Откройте затмение, и все ваши проекты должны работать нормально.
Проблема с удалением файлов в каталоге.metadata заключается в том, что вам придется запускать рабочую среду с нуля. Таким образом, восстановление всех ваших проектов может занять некоторое время, особенно если у вас их несколько. Восстановление.metadata из резервной копии, просто заменив существующие файлы на старые резервные копии, работало для меня.
Есть много возможных причин для такого рода поведения. В дополнение к запуску из командной строки, как у вас, стоит поискать подсказки в вашем файле журнала рабочего пространства, который является файлом.metadata/.log в вашем каталоге рабочего пространства - NPE, который подходит вам, выглядит так, как будто он может делать с самим кодом регистрации, но журнал может все еще помочь определить, что происходило до ошибки.
Поиск в Интернете сообщений, которые вы часто находите, выдает предложения по удалению различных каталогов или файлов и повторному запуску. Иногда мне удавалось просто удалить части.metadata /.plugins / org.eclipse.ui.workbench / workbench.xml, чтобы получить менее разрушительные решения.
Замораживание Eclipse при запуске - перед загрузкой рабочей области очень хороший ответ на этот пост. повторяя ответ, который сработал для меня
В каталоге рабочей области выполните следующие действия:
cd.metadata /.plugins
mv org.eclipse.core.resources org.eclipse.core.resources.bak
Начать затмение. (Должно отображаться сообщение об ошибке или пустая рабочая область, потому что проект не найден.)
Закройте все вкладки открытых редакторов.
Выйти из затмения.
rm -rf org.eclipse.core.resources (Удалить вновь созданный каталог.)
mv org.eclipse.core.resources.bak/ org.eclipse.core.resources (Восстановить исходный каталог.)
Запускаем eclipse и начинаем работать.:-)
Ответ CharlesB
Я не пробовал все это. Я перезапустил на ноутбуке / машине. И после этого все нормализовалось.
Ни одно из решений не помогло мне в моем случае.
Я нашел рабочее решение, хотя. Я читал, что это происходит, когда плагин ADT не обновляется должным образом в Eclipse.
Solution
From Eclipse. . .
1. Go to Help Tap
2. Click Check for Updates
Обнови все и воу! Больше не зависает при запуске Eclipse!