Предоставленный JavaHome не является допустимой папкой в eclipse

#java #eclipse #gradle #java-home

#java #eclipse #gradle #java-home

Вопрос:

Я перенес рабочую область на новую машину с другим дистрибутивом Java. На старой машине была java-11-openjdk-amd64. В новой папке есть только corretto.

При открытии старой рабочей области на новом компьютере я получаю некоторые problem s, такие как

Предоставленный JavaHome не является допустимой папкой. Вы указали: /usr/lib/jvm/java-11-openjdk-amd64 строка 0 Маркер ошибки оценки

Итак, в рабочей области, которую я удалил .metadata , и я искал в рабочей области (и ~/.eclipse , ~/.gradle на всякий случай) ссылки на старую версию с

grep -r "/usr/lib/jvm/java-11-o"

Результатов нет. Я убедился, что никакие процессы eclipse не запущены ( ps -aux | grep eclipse ) и перезапустил eclipse, но ошибки остаются. Что еще я могу сделать перед созданием нового проекта и ручным копированием кода?

Ответ №1:

Похоже, что подходящее место для редактирования находится в настройках eclipse и / или что eclipse выбирает это из ошибочно установленной JAVA_HOME переменной среды.

Окно> Настройки> выполните поиск в поле фильтра для «установленных», чтобы перейти к «Установленным JRES», удалите все записи, которые кажутся неправильными, и добавьте сюда свою установку coretto.

Далее проверьте Window> Prefernences> Gradle> Аргументы> Java Home и исправьте все здесь. Скорее всего, вы можете просто выбрать «workspace JRE», и это должно устранить проблему.

Если это не сработает, всегда есть возможность добавить в ваш ~/.gradle файл одну строку с:

 org.gradle.java.home=/path/to/coretto
  

Комментарии:

1. В Eclipse я обнаружил устаревшее кэшированное свойство java.home в .settings/org.eclipse.buildship.core.prefs — вы можете изменить его на свой новый JAVA_HOME или удалить Gradle nature из проекта и применить его снова

Ответ №2:

Я получил обновление для своей виртуальной машины, и предыдущий Pref> Gradle> Arg> Java Home больше не существовал. Я вырезал и вставил ту, которая это сделала… К сожалению, это не сработало. Мне пришлось пройти через Eclipse и использовать файловую навигацию, чтобы перейти к новому Java Home, который я хотел использовать. (Затем выполните Gradle> Обновить проект Gradle, чтобы заставить его принять).