我读过这篇文章
How do I tell Gradle to use specific JDK version?
似乎忽略了这一点。开发人员应负责将自己的JAVA_HOME设置为安装它的位置,这在不同的操作系统上是不同的。
我想要的是设置哪个jdk主要版本应该像1.8一样使用,如果它们的JAVA_HOME指向1.7并且有一个很好的错误消息说它请修复你的JAVA_HOME变量就会失败。
这可以在gradle中使用吗?
重要的部分是在git repo中有一些东西,说gradle.jdk.must.be = 1.8,如果使用JAVA_HOME或者使用主目录中的gradle.properties或其他什么,它会尝试使用JAVA_HOME进行编译,如果它失败了,它应该很好地告诉他们设置JAVA_HOME或gradle.properties或其他什么。
相关文章:How to set JDK version in Gradle project WITHOUT explicit JDK path?
当有人检查某个项目时,有点令人困惑的是,当它没有编译时,他们不知道为什么没有错误告诉他们要修复什么。
感谢, 迪安
答案 0 :(得分:2)
task checkJavaVersion << {
if (!JavaVersion.current().isJava8()) {
String message = "ERROR: Java 1.8 required but " +
JavaVersion.current() +
" found. Change your JAVA_HOME environment variable.";
throw new IllegalStateException(message);
}
}
compileJava.dependsOn checkJavaVersion