我有一个系统,它的java
中没有PATH
二进制文件,也没有设置JAVA_HOME
-这是为了测试。我正在尝试调用Gradle构建,为此,我指定了org.gradle.java.home
:
./gradlew -Dorg.gradle.java.home=/usr/lib/jvm/java-8-openjdk-amd64
但失败了:
ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH.
Please set the JAVA_HOME variable in your environment to match the location of your Java installation.
在此处找到针对Gradle 2.14.1的Accordong文档:https://docs.gradle.org/current/userguide/build_environment.html
org.gradle.java.home
Specifies the Java home for the Gradle build process. The value can be set to either a jdk or jre location, however, depending on what your build does, jdk is safer. A reasonable default is used if the setting is unspecified.
我究竟做错了什么?
最佳答案
Java home for the Gradle build process
org.gradle.java.home
在构建过程中使用,但是gradle本身(独立发行版或包装器)使用JAVA_HOME
环境变量中的JDK或(如果未设置)使用PATH
中的JDK。Gradle包装器是一个jar文件+简单的 shell 启动脚本,它需要运行
java
二进制文件才能运行。您可以使用以下方式:
JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64 ./gradlew
内联环境变量在bash中有效,不确定其他shell。
关于gradle - 设置系统属性org.gradle.java.home不利于开始Gradle构建,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38814539/