Gradle找不到tools.jar [重复]
Posted
技术标签:
【中文标题】Gradle找不到tools.jar [重复]【英文标题】:Gradle can't find tools.jar [duplicate] 【发布时间】:2018-11-09 13:15:40 【问题描述】:我找到了这个post,但答案并没有解决我的问题。答案仅针对 Windows 系统并提供对我正在运行的操作系统没有帮助的文件路径。 我正在运行带有 Java 1.8 的 openSUSE Leap 15,不能更改操作系统或 Java 版本。
当我尝试使用命令./gradlew clean build
构建时,出现以下错误:
:buildtools:compileJava FAILED
FAILURE: Build failed with an exception.
* What went wrong:
Execution failed for task ':buildtools:compileJava'.
> Could not find tools.jar. Please check that /usr/lib64/jvm/java-1.8.0-openjdk-1.8.0/jre contains a valid JDK installation.
* Try:
Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output.
BUILD FAILED
Total time: 15.364 secs
我已经像这样检查了我的 Java 安装:
$> rpm -qa | grep java
javapackages-tools-5.0.0+git20180104.9367c8f6-lp150.1.2.x86_64
timezone-java-2018g-lp150.2.13.1.noarch
java-1_8_0-openjdk-1.8.0.181-lp150.2.6.1.x86_64
libjavascriptcoregtk-4_0-18-2.20.5-lp150.2.6.1.x86_64
java-1_8_0-openjdk-headless-1.8.0.181-lp150.2.6.1.x86_64
我还检查了 JAVA_HOME:
$> echo $JAVA_HOME
/usr/lib64/jvm/jre-1.8.0-openjdk
【问题讨论】:
你的 gradle 文件是什么样子的,它说你引用了jre
,而你应该引用jdk
来使用tools.jar
。
Gradle 需要 JDK(请参阅 docs.gradle.org/current/userguide/… ):您的 $JAVA_HOME 指向 JRE 安装,其中不包含所需的 tools.jar
。您可以重新配置 JAVA_HOME 以指向您的 JDK 而不是 JRE 吗?
【参考方案1】:
cmets 启发了我寻找解决方案。显然安装包java-1_8_0-openjdk 只会提供OpenJDK 8 运行环境。我错误地认为它会包含开发工具,因为它的名称中有“jdk”(Java Development Kit)。 p>
我的问题通过简单地安装包java-1_8_0-openjdk-devel 解决了,它实际上包含了开发工具,就像这样:sudo zypper in java-1_8_0-openjdk-devel
。
zypper se jdk
命令可以帮助你了解你的 jdk 安装状态。安装包 java-1_8_0-openjdk-devel 后,您应该会在包名称旁边看到一个 i+
。您应该能够发现以下两行:
i+ | java-1_8_0-openjdk | OpenJDK 8 Runtime Environment | package
i+ | java-1_8_0-openjdk-devel | OpenJDK 8 Development Environment | package
【讨论】:
以上是关于Gradle找不到tools.jar [重复]的主要内容,如果未能解决你的问题,请参考以下文章
使用 Gradle 编译 Java 项目时报错: Could not find Tools.jar
找不到 com.android.tools.build:gradle:3.0.0 [重复]