我找到了这个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
答案 0 :(得分:2)
这些评论启发了我寻找解决方案。显然,安装软件包java-1_8_0-openjdk仅会提供OpenJDK 8运行时环境。我误以为它会包含开发工具,因为它的名称为“ jdk”( J ava D 开发 K )。>
我的问题通过简单地安装软件包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