Это означает, что ваш код использовал ссылочную переменную объекта, которая была установлена в нуль (т. е. она не ссылалась на экземпляр фактического объекта).
Чтобы предотвратить ошибку, объекты, которые могут быть пустыми, должны быть протестированы для null перед тем, как использовать.
if (myvar != null)
{
// Go ahead and use myvar
myvar.property = ...
}
else
{
// Whoops! myvar is null and cannot be used without first
// assigning it to an instance reference
// Attempting to use myvar here will result in NullReferenceException
}
Это может быть просто ошибка, которую показывает ошибка (а не то, как она написана в файле eclipse.ini), но есть текст в Eclipse.ini (Указание JVM) , в котором говорится, что следующее:
BLOCKQUOTE>
- Параметр -vm и его значение (путь) должны быть в отдельных строках.
- Значение должно быть полным абсолютным путем к Java исполняемый, а не только в домашний каталог Java.
- Опция -vm должна произойти до опции -vmargs, поскольку все после -vmargs передается непосредственно в JVM
Это может произойти, когда переменная среды PATH указывает на неправильную установку java.
Эта ошибка возникла у меня на ubuntu, установив 32-битную и 64-битную java. Используйте
sudo update-alternatives --config java
, чтобы установить правильную версию для использования по умолчанию.
Всякий раз, когда вы видите эту ошибку, перейдите в папку «Конфигурация» и проверьте, что только что был создан файл журнала. Он должен иметь правильную Exptecttrace. Мой был случай, когда я получил обновленную 32-битную JRE (или JVM), которая была стандартной Java, добавленной в Path. И моя установка Eclipse была 64-битной, что означало, что ей нужна 64-разрядная виртуальная машина для запуска своих собственных SWT-библиотек. Поэтому я просто удалил 32-битную JVM и заменил ее на 64-разрядную JVM.
Интересно, улучшит ли этот механизм отчетности, вместо того, чтобы молча генерировать файл журнала в каком-то каталоге.
Я сталкиваюсь с той же проблемой с sts 3.8.4, поэтому я попробовал разные настройки, но не повезло, я снова переустанавливаю jdk n, но пытаюсь, но такую же проблему. Наконец, я скачал sts 3.8.2. Использование окон 8, 64 бит os. спасибо
У меня тоже была эта проблема. У меня был старый JDK1.8.0_05. Я установил новейший JDK1.8.0_111, и теперь все отлично работает. Просто не забудьте обновить переменную среды.
Я нахожусь в Windows 7 64 бит. Использование Eclipse Neon 1a.
Надеюсь, что это поможет кому-то.
На мой взгляд, большинство ответов здесь относительно разных архитектур Eclipse и Java просто ошибочны, и это можно легко проверить, например, Монитор процессов под Windows. Опция -vm
предназначена для запуска определенной версии java, и точка ее заключается в том, что сконфигурированный процесс запущен и сам запускает весь код Java, поэтому вы настраиваете до java.exe
. В этом случае вам не нужно иметь одну и ту же архитектуру для Eclipse и Java, но может с радостью смешивать 32 бит и 64 бит. Вы НЕ МОЖЕТЕ смешивать оба, если вы НЕ используете -vm
, но пусть Eclipse загружает Java изначально в свой собственный процесс с помощью jvm.dll и т. Д. Последнее поведение Eclipse по умолчанию, но не в том случае, если вы правильно настроили -vm
в eclipse.ini
.
Если вы мне не верите, сделайте некоторые тесты самостоятельно, используя разные архитектуры Eclipse и Java и настроить -vm
или не правильно. В конце концов, именно это вопрос, описанный в его комментарии к принятому ответу:
Не удается запустить Eclipse; JVM завершена. Код выхода = 13
Он говорит, что сейчас работает 64-битный JDK, но на его снимке экрана видно, что его Eclipse - 32 бит, потому что путь для launcher.library
равен 32 Бит.
И теперь по той причине, что я пришел сюда: у Оби моих клиентов возникли проблемы с загрузкой одного из наших приложений на основе Eclipse / OSGI, а Java вышло с кодом выхода 13. В итоге это показало, что проблема была не в -vm
, а в архитектуре Java и eclipse.exe
, но вместо этого он просто отсутствовал config.ini
, и я предполагаю, что eclipse.exe
не знал, что загрузить или что такое. После того, как мы это узнали и положили config.ini
на место, приложение загрузилось с использованием -vm
и 64-битного JRE7 в комбинации с 32-битным eclipse.exe
.
Ошибка означает, что это неправильная версия JVM для этой версии Eclipse. Ссылка имеет более подробную информацию:
http://www.ehow.com/how_4784069_terminated-exit-code-error-eclipse.html
У меня была такая же проблема на Ubuntu, и я решил ее распаковать все * .pack-файлы в каталог jdk. например: cd /usr/java/jdk1.7.0_03/jre/lib sudo ../bin/unpack200 rt.pack rt.jar
У меня была та же проблема с eclipse на моей машине. У меня был 32-разрядный бит. Таким образом, я удалил 32-битный и установил 64-битный вариант, и он работал отлично.
Посмотрите на вторую строку окна сообщения. Там вы можете увидеть, какая Java-среда фактически запущена. Мой был внезапно C: \ ProgramData \ Oracle \ Java \ javapath \ javaw.exe. Это произошло после того, как я установил «chrome java updater» (браузер Chrome застонал: «ваш java устарел, вам нужно обновить ...»).
До этого «chrome java update» мое затмение (luna jee x64) началось без ошибок. Подойдя ближе к фону, я обнаружил следующее: chrome java updater (notabene, начатый с сайта Oracle) добавил C: \ ProgramData \ Oracle \ Java \ javapath перед env var PATH. Он содержит три символических ссылки на новейшую java 8 JRE-установку в (x86) папку программы -> следовательно, на 32-битную java JRE. Oracle заменяет Java8 старой техникой, имеющей символические ссылки в system32 (64 бит) соответственно. SysWOW64 (32 бит).
просто установите 64-разрядную версию JAVA из http://java.com/en/download/manual.jsp
и удалите старую версию, если будет предложено 64-битное установщик
Я использовал новый установщик Eclipse. Мне не понравился путь установки, и я изменил его вручную. После этого я получил сообщение exit = 13.
В файле eclipse.ini
с именем -install
появилось новое свойство. Мне просто пришлось изменить его с новым местоположением, и это решило эту проблему.
В новом установщике я выбрал D:/eclipse
, но IDE была установлена на D:/eclipse/eclipse
. Итак, я переместил папку вручную. В следующий раз, когда я попытался открыть eclipse, я получил ошибку выхода. Таким образом, мне пришлось изменить eclipse.ini
и установить текущее местоположение:
-install
D:/eclipse
Я просто ударил это тоже. Оказывается, что по крайней мере для меня это было связано с попыткой использовать win64-версию JRE с win32 Eclipse. Кажется, что win32 Eclipse требует win32 Java (то, что называется -586 в списке установщиков Java от Oracle / Sun).
Причина, по которой я использовал оба, заключается в том, что я пытался определить ошибку, которая проявилась только в 64-битном Eclipse, поэтому мне нужно сопоставить 32-разрядную версию.
Как только я установил BOTH версии «x64» (win64) и «i586» (win32) JRE на моей машине, все работает нормально и без ошибок 13. Возможно, вы оба установили одновременно.
У меня была такая же ошибка при настройке eclipse.ini для использования JRE6. Оказывается, я вызвал эту ошибку, неправильно настроив eclipse на использование 64-разрядной JVM при запуске 32-разрядной версии eclipse 3.7.
Правильная конфигурация требовала, чтобы в eclipse.ini -vm argumument использовался «C: / Program Files (x86) /» вместо «C: / Program Files /".
Сделать убедитесь, что используемая версия JVM (32/64 бит) соответствует версии eclipse (32/64 бит).
Я установил переустановку jdk. В моем случае необходимо было сделать:
java -version
sudo apt-get purge openjdk*
sudo add-apt-repository ppa:webupd8team/java
sudo apt-get update
sudo apt-get install oracle-java7-installer
java -version
javac -version
, взятый из Установить Java JDK + JRE (oracle) в Kubuntu 13.04 из apt
используйте следующую конфигурацию:
-startup
plugins/org.eclipse.equinox.launcher_1.3.0.v20130327-1440.jar
--launcher.library
plugins/org.eclipse.equinox.launcher.win32.win32.x86_64_1.1.200.v20130807-1835
-product
org.springsource.ggts.ide
--launcher.defaultAction
openFile
--launcher.XXMaxPermSize
256M
-vm
C:\Program Files\Java\jdk1.7.0_51\jre\bin\javaw.exe
-vmargs
-Dorg.eclipse.swt.browser.IEVersion=10001
-Dgrails.console.enable.interactive=false
-Dgrails.console.enable.terminal=false
-Djline.terminal=jline.UnsupportedTerminal
-Dgrails.console.class=grails.build.logging.GrailsEclipseConsole
-Dosgi.requiredJavaVersion=1.6
-Xms40m
-Xmx768m
-XX:MaxPermSize=256m
-Dorg.eclipse.swt.browser.IEVersion=10001
Вам нужно проверить, есть ли у вашего компьютера 64-разрядная или 32-разрядная операционная система, то же самое касается JDK (64-разрядная / 32-разрядная версия), а также для Eclipse (64-разрядная / 32-разрядная) .
Убедитесь, что они все одинаковые; если нет, вам нужно загрузить тот, который соответствует вашей битте.
Убедитесь, что Eclipse и Java, которые вы используете, являются либо 32-разрядными, либо 64-разрядными.
Вы не можете запустить 64-битное затмение с 32-разрядным JRE.
java -version
Java HotSpot (TM) 64-Bit
Сервер VM
32-разрядная версия JRE не будет иметь в ней 64-разрядную версию.
Перейдите в папку, в которой вы сохранили Eclipse. Просмотрите папку конфигурации в журнале запуска. Это даст вам гораздо лучшую диагностику, чем «код выхода 13».
После обновления java, eclipse не запустится, поскольку изменилось местоположение jdk по умолчанию. Добавление следующих строк в файл eclipse.ini немедленно разрешило мою проблему:
-vm
C:\Program Files (x86)\Java\jdk1.7.0_75\bin\javaw.exe
Я добавил эти строки непосредственно перед vmargs. Он выглядит следующим образом:
...
--launcher.defaultAction
openFile
-vm
C:\Program Files (x86)\Java\jdk1.7.0_75\bin\javaw.exe
-vmargs
-Dosgi.requiredJavaVersion=1.5
-Dhelp.lucene.tokenizer=standard
-Xms40m
-Xmx512m
Для получения дополнительной информации о eclipse.ini посетите сайт http://wiki.eclipse.org/Eclipse.ini#-vm_value:_Windows_Example
В моем случае я использую 32-битное eclipse и java. Если вы установили 32-разрядную и 64-разрядную версии java, будьте осторожны, чтобы выбрать правильную версию. Для 64-разрядных версий обратитесь к файлу javaw.exe в каталоге
C:\Program Files\Java\jdk1.8.0_60\bin
для тех, у кого есть Eclipse Neon
Я хотел запустить Eclipse Neon и имел JRE 1.8, но JDK 1.7 Вернул ошибку = 13, тогда я установил java JDK 1.8, и все работало как шарм
Просто удаленная версия jre-32 bit и она отлично работает для меня.
В моем случае путь JAVA не был установлен в переменные Env. Начал работать после того, как правильный путь был установлен в Env PATH.
Введите javac в командной строке и убедитесь, что JAVA PATH верен.
Недавно я столкнулся с той же проблемой. Моя версия eclipse не поддерживала java-версию 8.
Я случайно установил jre 8 на моем компьютере, который автоматически обновил мою переменную PATH, добавив «C: \ ProgramData \ Oracle \ Java \ javapath "в начале процесса, который затмил eclipse, чтобы забрать эту версию (и игнорировать добавленную вручную версию 1.6, которая появилась позже в порядке) и сбой с кодом выхода 13.
Я просто удалил эту строку из путь, из-за которого система подбирала мою старшую версию, и затмение началось просто отлично.
У меня была такая же проблема, и я потратил около часа на то, чтобы решить проблему. В конце концов, это был символ «#» в пути.
Итак, я переименовал «C: \ # IDE \ eclipse 3.7 \» в «C: \ + IDE \ eclipse 3.7 \» и решил проблема.
Я использовал Eclipse Juno, и я не помнил, было ли это 32 или 64 бит. Я установил Java 32 бита, и поэтому он не удался. Затем я установил Java 64 бит, а Eclipse Juno снова работает.
Я также удалил ссылку java или jre в переменных среды (PATH).
Я сделал пару вещей, чтобы избавиться от этой досадной ошибки, поскольку модификация .ini никогда не работала для меня.
Двойной щелчок «eclipse.exe» Работает теперь как charm. Используйте рабочее пространство по умолчанию для загрузки старых проектов.
Я подозреваю, что это проблема Java Java JDK больше, чем затмение.
Для Eclipse:
Добавлены две строки в eclipse.ini
Вторая строка представляет местоположение JDK файла javaw.exe.
-vm
C: \ Program Files \ Java \ jdk1.7.0_60 \ bin \ javaw.exe
blockquote>Примечание: место -vm строк до - vmargs, в противном случае используется местоположение по умолчанию.
Для STS
Измените то же, что указано выше в STS.ini
Прежде чем перейти к решению, сообщите нам, почему он показывает эту ошибку. Если вы знаете проблему, стоящую за этой проблемой, мы можем легко исправить эту ошибку.
Причина 1: Наиболее распространенная причина этой проблемы заключается в том, что мы пытаемся установить другую битовую версию, то есть 64-битную или 32 разрядной версии программного обеспечения. Возможно, это либо Eclipse, либо Java.
Решение. Проверьте, какая версия операционной системы вы используете. Убедитесь, что вы загрузили ту же версию Eclipse, а также ту же версию программного обеспечения Java.
Причина 2: Ошибка конфигурации в файле Eclipse.ini
Решение. Добавьте в конец файла Eclipse.ini эту строку «-vm, а затем путь к вашему java sdk». например: -vm C: \ Program Files \ Java \ jdk1.7.0_71 \ bin \ javaw.exe
Причина 3: Специальные символы (#,!, @) в каталоге установки Eclipse.
Решение: убедитесь, что у вас нет специальных символов.
Причина 4: вы добавили путь JAVA два раза в системную переменную PATH, и оба пути различны.
Решение: удалите один неправильный / другой путь JAVA из системной переменной PATH.
Причина 5: Возможно, вы используете последнюю версию Eclipse, но вы можете использовать неправильную версию или неподдерживаемую версию Java Virtual Machine (JVM).
Решение. Чтобы проверить, какая версия java вы используете открытую командную строку, нажав клавишу «win + R» и введите cmd и нажмите «Ввод». Теперь в этой консоли введите команду Java -version, чтобы узнать версию java. Теперь изучите, поддерживает ли eclipse эту версию или нет. Или вы можете открыть папку «readme» в папке Eclipse и открыть файл readme_eclipse.html, чтобы посмотреть, какую версию он поддерживает.