【发布时间】:2015-05-29 10:24:47
【问题描述】:
我有多个项目并使用不同的 jdks(IBM、SUN)和版本(1.6、1.7、1.8)构建。
在每个项目的 gradle 脚本中,我定义了 sourceCompatibility 和 targetCompatibility。如何定义每个项目特定的org.gradle.java.home?
如果我在我的主项目 gradle.properties 文件中将 IBM jdk 6 定义为 org.gradle.java.home,其他项目构建将失败。
我有 gradle.properties 文件只有主要的 gradle 项目。
我不想使用 JAVA_HOME 类路径变量来运行我的 gradle 脚本。 我正在使用 gradle 2.3。
请给一些建议来解决这个问题?
【问题讨论】:
-
使用if else条件根据项目更改java版本。例如,如果您在构建 xml 中有 Project A 、 B 和 C ,您将 java home 路径定义为 null 并根据您更改 java home 的项目。我认为这将帮助您解决问题。
-
@stacktome 我正在使用 gradle。我该如何添加它?可以给点样品吗?
-
您唯一的选择是修改
JavaCompile任务。在 2.3 中,您必须查看记录不佳的JavaToolChain:docs.gradle.org/2.3/dsl/… 和 docs.gradle.org/2.3/javadoc/org/gradle/jvm/toolchain/… 但是工具链已被 2.4 中记录更差的工具解析器所取代:docs.gradle.org/2.4/dsl/…
标签: java gradle build.gradle