Gradle находит неправильный JAVA_HOME, хотя он правильно установлен в Ubuntu 13.10

Я только что установил градлер с терминала

sudo apt-get install gradle

После финиша пытаюсь выполнить команду

gradle -v

Я получаю следующую ошибку

ERROR: JAVA_HOME is set to an invalid directory: /usr/lib/jvm/java-7-oracle/jre/bin/java

Please set the JAVA_HOME variable in your environment to match the
location of your Java installation.

Когда я запускаю echo $JAVA_HOME, я получаю

/usr/lib/jvm/java-7-oracle/jre/bin/java

Так что это правильный путь. Я отредактировал мой файл bashrc и добавил следующие строки

export JAVA_HOME=/usr/lib/jvm/java-7-oracle/jre/bin/java
export JAVA_HOME

Я все еще получаю ту же ошибку при запуске gradle -v

2
задан 15 June 2014 в 17:30

3 ответа

Этот вид вопроса был также , ответил на Переполнении стека . Оказывается, что существует export в /usr/bin/gradle, который, вероятно, не должен быть там.

Одно решение состоит в том, чтобы прокомментировать тот export строка. Другое решение состоит в том, чтобы использовать PPA, который имеет различный/более новый Gradle.

6
ответ дан 15 June 2014 в 17:30

Вы неправильно установили Ваш JAVA_HOME переменная. Это не должно указывать на jre, но к jdk.

Набор Ваш JAVA_HOME переменная к /usr/lib/jvm/java-7-oracle.

3
ответ дан 15 June 2014 в 17:30

Это - проблема с gradle, который добавляет/bin/java JAVACMD="$JAVA_HOME/bin/java" к Вашему JAVA_HOME соединяют каналом в его сценариях. поэтому перейдите к Вашему gradle-3.3/bin местоположение Ваших gradle сценариев и редактирования gradle файл с помощью gedit.

    if [ -n "$JAVA_HOME" ] ; then
    if [ -x "$JAVA_HOME/jre/sh/java" ] ; then
        # IBM's JDK on AIX uses strange locations for the executables
        JAVACMD="$JAVA_HOME/jre/sh/java"
    else
        JAVACMD="$JAVA_HOME/bin/java"
    fi
    if [ ! -x "$JAVACMD" ] ; then
        die "ERROR: JAVA_HOME is set to an invalid directory: $JAVA_HOME

Please set the JAVA_HOME variable in your environment to match the
location of your Java installation."

это - фрагмент кода, который добавляет путь Java, следовательно приводит к недопустимому пути, так как Вы уже включали/bin/java в свой JAVA_HOME. так или измениться это здесь или удалить/bin/java из Вашего JAVA_HOME соединяет переменную каналом от/etc/environment. Я удалил/bin/java из пути JAVA_HOME, и он хорошо работал для меня.

1
ответ дан 2 December 2019 в 01:28

Другие вопросы по тегам:

Похожие вопросы: