我有多个项目并使用Gradle 2.4构建。
我想覆盖每个项目中的org.gradle.java.home
参数,并尝试为每个项目添加gradle.properties文件并覆盖参数。
我已设置主gradle项目org.gradle.java.home=C:/Java/jdk1.6.0
并在子项目中覆盖为org.gradle.java.home=C:/Java/jdk1.7.0_45
但它没有按预期工作,我正在
无效的源版本:1.7
错误消息。
有人可以说明如何解决这个问题吗?
答案 0 :(得分:3)
从我的测试:
我创建了空白根项目,但未指定要使用的java,并包含两个子项目,其中包含org.gradle.java.home
和sourceCompatibility
以及{{1}每个子项目都有效。
项目结构:
targetCompatibility
Root的设置.gradle :
/build.gradle <-- root project (no sourceCompatibility or targetCompatibility here .. just blank)
/settings.gradle <-- include the subprojects
/gradle.properties <-- root gradle.properties (no org.gradle.java.home here)
/sub1/build.gradle
/sub1/gradle.properties
/sub2/build.gradle
/sub2/gradle.properties
Sub1的gradle.properties :
include 'sub1'
include 'sub2'
Sub1&#39; build.gradle :
org.gradle.java.home=/path/to/java8
Sub2的gradle.properties :
sourceCompatibility = JavaVersion.VERSION_1_8
targetCompatibility = JavaVersion.VERSION_1_8
Sub2&#39; build.gradle :
org.gradle.java.home=/path/to/java7
所以,你可以试试这个设置。
我想,因为您正在使用已定义java的根项目(不仅仅是配置点) - 这可能是问题所在。
同时检查以下内容: