Error: JAVA_HOME is not defined correctly.
We cannot execute
/System/Library/Frameworks/JavaVM.framework/Versions/CurrentJDK/Home/bin/java
Я обновил свой OSX до 10.8.4. После обновления OSX я обновил JDK и JRE до 7. Но я получаю вышеуказанную ошибку, когда пытаюсь собрать проект maven.
Когда я бегу ls -al /System/Library/Frameworks/JavaVM.framework/Versions/
Я получаю ответ ниже
drwxr-xr-x 11 root wheel 374 Jul 22 22:33 .
drwxr-xr-x 10 root wheel 340 Jul 22 18:30 ..
lrwxr-xr-x 1 root wheel 10 Jul 22 18:30 1.4 -> CurrentJDK
lrwxr-xr-x 1 root wheel 10 Jul 22 18:30 1.4.2 -> CurrentJDK
lrwxr-xr-x 1 root wheel 10 Jul 22 18:30 1.5 -> CurrentJDK
lrwxr-xr-x 1 root wheel 10 Jul 22 18:30 1.5.0 -> CurrentJDK
lrwxr-xr-x 1 root wheel 10 Jul 22 18:30 1.6 -> CurrentJDK
lrwxr-xr-x 1 root wheel 10 Jul 22 18:30 1.6.0 -> CurrentJDK
drwxr-xr-x 7 root wheel 238 Jul 22 18:30 A
lrwxr-xr-x 1 root wheel 1 Jul 22 18:30 Current -> A
lrwxr-xr-x 1 root wheel 59 Jul 22 18:30 CurrentJDK -> /System/Library/Java/JavaVirtualMachines/1.6.0.jdk/Contents
Для этого ls -al /System/Library/Frameworks/JavaVM.framework/Versions/CurrentJDK/Home/bin
Я не вижу никакого содержания в CurrentJDK дальше.
На бегу /usr/libexec/java_home
Я получил:
/Library/Java/JavaVirtualMachines/jdk1.7.0_25.jdk/Contents/Home
Я в значительной степени новичок в работе с OS X. Дайте мне знать, если бы я упустил какой-то момент в том, чтобы сделать его успешным.
macos
mountain-lion
java
arvind406
источник
источник
echo $JAVA_HOME
,ls -al /System/Library/Frameworks/JavaVM.framework/Versions/CurrentJDK/Home/bin
иls -al /System/Library/Frameworks/JavaVM.framework/Versions/
добавить результат на вопрос?export JAVA_HOME=/usr/libexec/java_home
.profile ->export PATH=${JAVA_HOME}/bin:$PATH
export CATALINA_HOME=/Library/Tomcat/Home
.bashrc и .profile содержит упомянутые выше команды ..Ответы:
Apple рекомендует установить для JAVA_HOME значение «/ usr / libexec / java_home».
То, что сработало для меня, было обернуть это вокруг $ (). В итоге я настроил JAVA_HOME, например, $ (/ usr / libexec / java_home), с помощью следующих команд:
источник
/System/Library/Frameworks/JavaVM.framework/Versions/CurrentJDK/Home/bin/java
если он существует - это Java, поставляемая Apple, последней из которых будет JRE 1.6.Чтобы использовать Oracle JDK (упомянутую вами Java 7), используйте путь / usr / bin / java, если вы полностью его установили. Обратите внимание, что JRE предназначен только для Java-апплетов и поэтому не влияет на / usr / bin / java
Для получения дополнительной информации см. Документацию по установке Oracle.
и заметка оттуда
источник
/usr/libexec/java_home
я получаю/Library/Java/JavaVirtualMachines/jdk1.7.0_25.jdk/Contents/Home
Перейдите по этой ссылке: /programming//a/44564303/5005676 Если вы видите скрипт mvn: здесь код не работает ---
Шаги для отладки и исправления:
Шаг 1: Откройте скрипт mvn /Users/Username/apache-maven-3.0.5/bin/mvn (откройте с помощью команды less, например: less /Users/Username/apache-maven-3.0.5/bin/mvn)
Шаг 2: Найдите приведенный ниже код в скрипте:
Шаг 3: Это происходит потому, что переменная JAVACMD не была установлена. Так что отображается ошибка.
Примечание: чтобы исправить это
Ключ: если вы хотите, чтобы он был постоянным, откройте emacs.profile
отправьте команды и нажмите Ctrl-x Ctrl-c (save-buffers-kill-Terminal).
источник