2017-10-06 94 views
6

我正在嘗試與Jenkins構建一個Android應用程序,並且我對詹金斯的從屬機器幾乎沒有控制權。作爲Gradle構建的一部分的Android SDK下載

爲了構建應用程序,我需要在從安裝了Android SDK,否則我得到如期望的那樣。

「SDK位置沒有發現在local.properties文件或sdk.dir定義位置一個ANDROID_HOME環境變量。「

既然如此,可以將gradle配置爲將SDK作爲構建過程的一部分進行下載並將其用作正常的依賴項?

這是否有意義?

感謝您的幫助。

+0

請參考:https://github.com/codepath/android_guides/wiki/Building-Gradle-Projects-with-Jenkins-CI#install-the-android-sdk –

+0

檢查提供的鏈接,它仍然指向一個步驟在Jenkins從站上安裝Android SDK。我的觀點是,我無法輕鬆做到這一點。 – FelipeFraga

回答

2

Gradle Android插件支持在構建時自動下載缺失的依賴關係;關鍵在於接受的與Android SDK有關的許可協議必須與將要構建的項目捆綁在一起。

你基本上只是從已經通過Android Studio(你的開發工作站)被接受的地方複製了已接受的許可協議,並確保它們被複制到Jenkins從屬設備上的Android SDK主目錄中。

這些文件可以在Android SDK文件夾中的license/文件夾中找到,但官方文檔將該目錄引用爲licenses/

+1

對不起,但我想你誤會了我。總的來說,我不能輕易改變Jenkins Slave,所以沒有安裝Android SDK。 – FelipeFraga

+1

我很抱歉,我誤解了這個問題 您應該可以通過環境變量設置Android SDK Home。您可以將其置於構建目錄的子目錄中,將ANDROID_SDK_HOME環境變量設置爲指向該子目錄,然後將許可證文件夾移動到那裏。 – cstarner

1

是的,這是可能的。退房this gradle這個插件,它能夠自動SDK下載

的插件添加到您的根級gradle這個

classpath 'com.jakewharton.sdkmanager:gradle-plugin:0.12.+' 

應用插件在常規「機器人」插件之前,您的build.gradle:

apply plugin: 'android-sdk-manager' 
apply plugin: 'com.android.application' 

注意:這個插件不再處於積極的發展狀態。

相關問題