windows安裝jenkins進行自動化打包

一、準備工作

1、下載Android SDK(要下載成最新的sdk,因爲舊版的sdk有一些主鍵不支持)
2、下載JDK版本(根據電腦的系統下載相應的版本x86 是32位的,x64是 64位的)
3、下載gradle版本(可以和開發商量看需要的gradle版本)
4、下載git
5、下載tomcat版本
6、下載jenkins.war 可以將war包放在tomcat的webapps下面(或者直接下載安裝包安裝jenkins)

1》Android SDK不需要安裝,下載下來解壓放入任意的文件中好了(看自己喜好了);
環境變量了:
1、在環境變量用戶變量選擇新建一個ANDROID_HOME的變量名,變量值填寫SDK解壓後的文件路徑
2、在系統變量中找到Path進行編輯,在Path後面加上SDK路徑:;%ANDROID_HOME%\platform-tools;(注意分號需要是英文下的);配置好 後在cmd中打adb不報錯就說明配置成功。
2》JDK下載後雙擊安裝,一直點擊下一步直到安裝完。
環境變量了:
1、在環境變量用戶變量選擇新建一個JAVA_HOME的變量名,變量值填寫JDK安裝文件路徑
2、在系統變量中找到Path進行編輯,在Path後面加上SDK路徑:;%JAVA_HOME%\bin;(注意分號需要是英文下的);配置好 後在cmd中打JAVA不報錯就說明配置成功。
3》gradle下載解壓就好
4》下載git安裝後配置環境變量
5》tomcat下載後雙擊安裝,一直下一步就好
6》jenkins下載後雙擊安裝,安裝完後,找到安裝路徑下的war文件,把war文件中的所有文件拷貝到Tomcat下的webapps文件中新創建文件夾Jenkins中
配置到這個時候就可以使用了,開啓Tomcat(在Tomcat中bin文件下的startup.bat開啓,stutdown.bat關閉),在到瀏覽器中輸入http://localhost:8080/Jenkins就可以進入了。到現在可以就可以只需要創建用戶名及密碼進入Jenkins界面了

二、jenkins 配置

全局工具配置

1、將相關的變量配置在自己的下載安裝的路徑
全局工具配置相關

2、新建一個自由風格的軟件項目
3、配置相關參數
一般的配置
git配置
構建配置

4、直接構建即可成功

三、問題
問題1:

16:55:06.183 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter] 
16:55:06.185 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter] FAILURE: Build failed with an exception.
16:55:06.186 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter] 
16:55:06.187 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter] * What went wrong:
16:55:06.187 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter] Unable to start the daemon process.
This problem might be caused by incorrect configuration of the daemon.
For example, an unrecognized jvm option is used.
Please refer to the user guide chapter on the daemon at https://docs.gradle.org/3.3/userguide/gradle_daemon.html
Please read the following process output to find out more:
-----------------------
Error: Could not create the Java Virtual Machine.
16:55:06.189 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter] Error: A fatal exception has occurred. Program will exit.
16:55:06.189 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter] Java HotSpot(TM) Client VM warning: ignoring option MaxPermSize=1024m; support was removed in 8.0
16:55:06.190 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter] Invalid maximum heap size: -Xmx10248m
16:55:06.190 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter] The specified size exceeds the maximum representable size.
16:55:06.191 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter] 
16:55:06.193 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter] 
16:55:06.194 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter] * Exception is:
16:55:06.197 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter] org.gradle.api.GradleException: Unable to start the daemon process.

jdk區分
錯誤原因:
在開始編譯的時候
解決方案:
在 C:\Users\songll.gradle 中建立一個gradle.properties gradle的全局配置 中增加一行:
org.gradle.jvmargs=-Xmx1024m -XX:MaxPermSize=256m

問題2:

12:35:36.546 [DEBUG] [org.gradle.process.internal.DefaultExecHandle] Changing state to: FAILED
12:35:36.546 [DEBUG] [org.gradle.process.internal.DefaultExecHandle] Process 'command 'C:\Program Files (x86)\Java\jdk1.8.0_111\bin\java.exe'' finished with exit value 1 (state: FAILED)
12:35:36.551 [ERROR] [org.gradle.api.Project] Error: Could not create the Java Virtual Machine.
12:35:36.551 [ERROR] [org.gradle.api.Project] Error: A fatal exception has occurred. Program will exit.
12:35:36.551 [ERROR] [org.gradle.api.Project] Invalid maximum heap size: -Xmx4g
12:35:36.551 [ERROR] [org.gradle.api.Project] The specified size exceeds the maximum representable size.
12:35:36.556 [DEBUG] [org.gradle.internal.progress.DefaultBuildOperationExecutor] Completing Build operation 'Execute task action 5/5 for :app:transformClassesWithDexForShenzhouyingRelease'

錯誤原因:
Gradle 構建塊 基本模塊project、task、property。
Project接口描述 代表一個正在構建的組件,如jar文件,或者一個目標,如部署應用程序。構建進程啓動後Gradle基於build.gradle配置實例化Project類
由上述可以看出是gradle在完成task時出錯了
Invalid maximum heap size: -Xmx4g 需要4g的內存才能建立JVM 自身電腦內存不足
解決方案:
開發將其改成了2g

問題3:
雖然構建成功了,但是沒有打出包來,打印的日誌中顯示

NDK is missing a "platforms" directory.
If you are using NDK, verify the ndk.dir is set to a valid NDK directory.  It is currently set to D:\soft\android-sdk_r23.0.2-windows\android-sdk-windows\ndk-bundle.
If you are not using NDK, unset the NDK variable from ANDROID_NDK_HOME or local.properties to remove this warning.

錯誤原因:
沒有NDK ,在sdk中沒有下載NDK的地方,因爲我之前下載的一個sdk版本比較老不支持這個組件
Android NDK 是一套允許您使用原生代碼語言(例如 C 和 C++)實現部分應用的工具集。在開發某些類型應用時,這有助於您重複使用以這些語言編寫的代碼庫。

解決方案:
重新找了我電腦上原來裝的android studio 中找到sdk重新指向然後下載了ndk,這個問題就解決了

問題4、
小灰灰遇到的

錯誤原因:
This error is because of the new feature of build-cache. It is using the default build-cache folder which is a long path.
解決方案
You can disable build-cache by adding android.enableBuildCache=false to you gradle.properties or set the build-cache path.

問題5:

ERROR: Timeout after 10 minutes
ERROR: Error fetching remote repo 'origin'
hudson.plugins.git.GitException: Failed to fetch from http://gitlab.szy.net/szy-android/ztjy-android-parent.git

錯誤原因:
git的配置有問題
解決方案:
重新安裝一個git即可

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章