如何使gradle.properties机器独立

时间:2017-04-21 15:44:07

标签: android-studio gradle android-gradle build.gradle java-home

我在两台不同的机器上工作(家庭与工作)并通过GitHub传输代码,这很好用,但是当我将此代码添加到org.gradle.java.home=C:\Program Files\Java\jdk1.8.0_131时,我只是遇到了机器依赖用于修复谷歌工作表烦恼的OAuth问题的文件:

org.gradle.java.home=C:\Program Files\Java\jdk1.8.0_77

ifdef

现在我必须在两行之间切换才能让Gradle编译。需要检查我是否仍然需要它(因为我得到了密钥库文件等),但我也想知道是否有一个简单的解决方案来使这项工作(例如像scanf)。

显然,我可以在其中一台机器中更改目录名称,但仍然很好奇如何在Studio中解决这个问题。

2 个答案:

答案 0 :(得分:1)

尝试从属性文件中删除该行。如果失败,请尝试在每台计算机上设置JAVA_HOME。

有很多相关的questions

您可以尝试询问gradle forums

答案 1 :(得分:1)

让我们从the Gradle docs引用:

  

org.gradle.java.home

     

指定Gradle构建过程的Java主目录。该值可以设置为jdk或jre位置,但是,根据您的构建所做的,jdk更安全。如果未指定设置,则使用合理的默认值。

因此,默认情况下,您不需要此项目属性(这就是在Gradle中调用它们)。

但是,可能有原因需要指定Java目录。对于此特定项目属性,您可以遵循Ray Tayeks建议并使用JAVA_HOME环境变量(在两个系统上)。但是还有另一种方法,可以用于任何项目属性(以及所谓的系统属性):

gradle.properties个文件可以位于文件系统的不同位置。您的文件位于项目目录中,因此,它们包含在VCS中。您可以将它们/它用于与项目相关的属性。另一个位置位于Gradle用户主目录中,默认情况下是个人文件夹中的.gradle文件夹。此文件夹不受版本控制,因此只需在那里定义属性。