JAVA_HOME неправильно установлен. Как reset это?

Когда я пытаюсь запустить mvn (Apache Maven, то есть), я продолжаю получать error "JAVA_HOME" not set.

Я следую инструкциям для установки переменной JAVA_HOME следующим образом; В терминале:

[email protected]$export JAVA_HOME=/home/user/jdk1.7.0_02/bin/java

[email protected]$export PATH=$PATH:/home/usr/jdk1.7.0_02/bin

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

Ответ 1

JAVA_HOME обычно должен включать только папку, содержащую папку bin.

Итак, в вашем случае

export JAVA_HOME=/home/user/jdk1.7.0_02/

export PATH=$PATH:$JAVA_HOME/bin

Кроме того, чтобы найти местоположение вашего java_home, вы можете следовать этой команде

which java

(Это вернет путь к текущему двоичному двоичному файлу java). Здесь /usr/bin/java )

ls -alh /usr/bin/java

(Это вернет истинный путь к символической ссылке. Здесь /etc/alternatives/java.

ls -alh /etc/alternatives/java

(Это вернет истинный путь к этой символической ссылке, которая является фактическим трактом JAVA HOME)

Ответ 2

  • Откройте терминал и откройте любой из следующих файлов, используя редактор по вашему выбору (vim, nano и т.д.):

    # nano /etc/profile
    

    (или)

    # nano /root/.bash_profile
    

    (Вместо root вы также можете изменить свое обычное имя пользователя.)

  • Теперь запустите следующие команды:

    # export JAVA_HOME="/opt/jdk1.6.0"
    # export PATH="/opt/jdk1.6.0/bin:$PATH"
    
  • Выйдите из системы и войдите в систему, теперь проверьте версию java в своем терминале, используя следующую команду:

    # java -version
    

    Результат должен выглядеть примерно так:

    # java -version
    java version "1.6.0″
    Java(TM) SE Runtime Environment (build 1.6.0-b105)
    Java HotSpot(TM) Client VM (build 1.6.0-b105, mixed mode, sharing)
    

Ответ 3

Нет... $JAVA_HOME должен указывать на /home/user/jdk 1.7.0_02/

Чтобы предотвратить ошибки типа "/home/user" в сравнении с "/home/usr", $PATH должен быть "$ PATH: $JAVA_HOME/bin"

И я рекомендую использовать собственный пакет (yum, apt-get и т.д.).

Ответ 4

Потому что это не то, к чему вы установили JAVA_HOME.

http://maven.apache.org/download.html

Убедитесь, что JAVA_HOME установлен в местоположение вашего JDK, например. экспортируйте JAVA_HOME =/usr/java/jdk1.5.0_02 и что $JAVA_HOME/bin находится в вашей переменной среды PATH.

Ответ 5

Вы можете поместить следующее в свой .bashrc, тогда оно должно быть правильным, даже если вы перейдете на другую java.

a=`realpath /usr/bin/java`;
export JAVA_HOME="${a%/bin/java}"