Gradle не находит tools.jar в JDK: решение проблемы
Быстрый ответ
Чтобы Ваш Gradle проект работал корректно, перейдите от JRE к JDK.
- Загрузите и установите JDK вместо JRE.
- Задайте для переменной окружения
JAVA_HOME
путь к установленному JDK, исключая/bin
в конце. - Перезапустите терминал или IDE, чтобы обновления переменной
JAVA_HOME
вступили в действие. - Убедитесь, что версия Java, используемая в Gradle, соответствует версии вашего JDK.
Настройка JAVA_HOME
для Unix-образных систем:
export JAVA_HOME=/путь/к/jdk
Настройка JAVA_HOME
для Windows:
set JAVA_HOME=C:\путь\к\jdk
После настройки снова запустите Gradle и настройте свою компиляцию для успешного выполнения!
Разгадывая тайну
Файл tools.jar
является частью JDK и отсутствует в JRE. Он существенен для компиляции, отладки и выполнения Java-кода в Gradle. Если Gradle не может обнаружить этот файл, это вызывает проблемы, которые мы поможем вам решить.
Подробное руководство для затрудненных поисков
Установите подходящий JDK
Убедитесь, что JDK установлен и файл tools.jar
находится в папке lib
установленной JDK.
Windows: C:\Program Files\Java\jdk<версия>\lib\tools.jar
Linux/macOS: /usr/lib/jvm/java-<версия>-openjdk/lib/tools.jar
# Используйте следующую команду для проверки наличия файла:
ls ${JAVA_HOME}/lib/tools.jar
Переменные окружения могут вас удивить
Обновите переменные окружения, уделяя особое внимание JAVA_HOME
, которая указывает на папку установки JDK.
Интегрируйте путь к папке bin
установленного JDK в PATH
. В Unix-образных системах для сохранения изменений обновите .bashrc
или .zshrc
.
У Gradle есть свои представления
В файле gradle.properties
вашего проекта укажите обновленное значение org.gradle.java.home
, которое указывает на путь к установленному JDK.
Проверьте вашу IDE
Убедитесь, что системное свойство java.home
в настройках IDE или в сценарии сборки соответствует пути к JDK. В IntelliJ IDEA это можно сделать в разделе Project Structure
.
Пользователи Eclipse, настал ваш черед!
В Eclipse перейдите в Конфигурации запуска Gradle и установите Java Home на путь к директории JDK.
Также рассмотрим несколько советов
- После внесения всех изменений перезапустите IDE или терминал.
- Указывая путь к JDK в файлах настроек, помните о необходимости использования обратных слешей (
\
) в Windows. - Если JDK не установлен, используйте apt или yum для установки OpenJDK.
- После установки или обновления JDK может потребоваться перезагрузка всех сервисов, связанных с Java, для синхронизации изменений.
Рассказ о системных свойствах
JAVA_HOME versus java.home
Переменная окружения JAVA_HOME
ведет к директории JDK, тогда как java.home
используется JVM и Java-приложениями для определения пути к Java. Обе они должны указывать на вашу установку JDK.
Gradle и JDK: История взаимосвязи
Gradle нуждается в инструментах из JDK, включая tools.jar
. Если Gradle не обнаруживает tools.jar
, это свидетельствует о проблемах с настройкой JDK или ее установкой. Мы вам поможем исправить это.
Советы для избежания типичных ошибок
Внезапное исчезновение tools.jar
При обновлении JDK помните, что Gradle должен быть настроен на новую версию JDK, а не остаться с предыдущим JRE.
Вредное JAVA_HOME
Если после обновления переменных окружения IDE не улавливает изменения, обновите путь к JDK в настройках сборки.
Дьявол кроется в деталях
В Windows используйте обратные слеши (\
) и не забудьте их экранировать в файлах настроек с помощью двойных обратных слешей (\\
).
Проблемы с доступом в Unix
Если у вас Unix-образная система и возникают проблемы с разрешениями, используйте sudo
для их устранения.
Визуализация
Проблему с поиском tools.jar
можно визуализировать как неудачную попытку поиска сокровищ:
Gradle (🕵️♀️) отправился в поиски сборщика программы (💎).
Файл `tools.jar` (🗺️) — это карта, без которой он справиться не сможет.
Однако упс, Gradle (🕵️♀️) ищет её не там, где надо (в JRE вместо JDK)!
+ Решение: подать Gradle правильную карту.
🕵️♀️Gradle с корректной картой (🗺️ внутри JDK)
= Сборка успешно завершена (💎)
Полезные материалы
- "Свежие вопросы о 'gradle+tools.jar' – Stack Overflow" для обсуждения темы "Gradle не обнаруживает tools.jar".
- Плагин Java, подробное руководство о Java плагине.
- Структура файлов JDK и JRE, поиск tools.jar среди множества файлов JDK.
- Установка Gradle, официальное руководство по установке Gradle.
- Адоптиум | Adoptium, платформа для скачивания сборок OpenJDK.
- Сообщество Gradle, форум для обсуждения вопросов, связанных с Gradle.
- Настройка окружения сборки, обзор всего, что касается настройки окружения для сборки Gradle.