0

我正在處理2臺不同的機器(家庭與工作)並通過GitHub傳輸代碼,這很好用,但是當我將代碼添加到該gradle.properties文件來解決一個棘手問題的OAuth爲谷歌牀單:如何使gradle.properties與機器無關

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

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

現在我必須在2線之間切換,以獲得搖籃編譯。需要檢查我是否仍然需要它(因爲我已經獲得了keystore文件等),但我也想知道是否有一個簡單的解決方案來完成這項工作(例如ifdef)。

很明顯,我可以在其中一臺機器上更改目錄名稱,但仍然好奇如何在Studio中解決這個問題。

回答

1

讓我們有引自the Gradle docs開始:

org.gradle.java.home

指定搖籃Java主建立過程。該值可以設置爲jdk或jre位置,但是,取決於構建的內容,jdk更安全。如果設置未指定,則使用合理的默認值。

所以,默認情況下,你不應該需要這個項目性質(那是什麼,他們被稱爲在搖籃)。

但是,可能有原因,您需要指定Java目錄。對於此特定項目屬性,可以按照Ray Tayeks的建議並使用JAVA_HOME環境變量(在兩個系統上)。但是也有另一種方法可用於任何項目屬性(也可用於所謂的系統屬性):

gradle.properties文件可以位於文件系統的不同位置。您的文件位於項目目錄中,因此它們包含在您的VCS中。您可以將它們用於項目相關的屬性。其他位置位於Gradle用戶主目錄中,默認情況下爲個人文件夾中的.gradle文件夾。該文件夾不受版本控制,因此只需在此處定義屬性。

+0

是的,我不再需要它們(一旦我將SHA-1和debug.keystore鎖定),抱歉讓我感到困惑。我確實需要兩者(當時),JAVA_HOME和java.home(儘管如其他文章所示) – Mairyu

1

嘗試從屬性文件中刪除該行。如果失敗,請嘗試在每臺機器上設置JAVA_HOME。

有很多相關的questions

你可能會試着問關於gradle forums