使用Jenkins自動構建Android問題總結
使用Jenkins自動構建Android,遇到幾個坑:
1.使用gradle build的時候提示無法從jcenter下載資源
解決方法:安裝Android SDK時,需要選中Extra中的repository
2.jenkins執行build工程時控制檯出現Could not load Logmanager "org.apache.juli.ClassLoaderLogManager"錯誤
解決方法:註釋或刪除$JENKINS_HOME/apache-tomcat/bin/daemon.sh中的以下部分
# Set juli LogManager config file if it is present and an override has not been issued
if [ -z "$LOGGING_CONFIG" ]; then
if [ -r "$CATALINA_BASE/conf/logging.properties" ]; then
LOGGING_CONFIG="-Djava.util.logging.config.file=$CATALINA_BASE/conf/logging.properties"
else
# Bugzilla 45585
LOGGING_CONFIG="-Dnop"
fi
fi
test ".$LOGGING_MANAGER" = . && LOGGING_MANAGER="-Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager"
JAVA_OPTS="$JAVA_OPTS $LOGGING_MANAGER"
同時在註釋# ----- Execute The Requested Command -----------------------------------------的後續指令碼中,刪掉"$LOGGING_CONFIG"
3.執行$ANDROID_HOME/build-toos/23.0.1/aapt時出現No such file ....錯誤
解決方法:缺少32bit的庫檔案或包,根據提示使用yum install安裝相應的包即可
4.build過程出現Could not create service of type InitScriptHandler using BuildScopeServices.createInitScriptHandler()
解決方法:在build選項中加入--stacktrace,從錯誤提示中發現無法建立$JENKINS_HOME/.gradle目錄,由於jenkins是root使用者安裝,沒有給tomcat使用者授權,使用chown授權給tomcat使用者即可
5.其他許可權不足等情況
解決方法:jenkins使用使用者tomcat執行指令碼,根據提示資訊授權即可
總結
解決問題,需要根據錯誤提示或者日誌輸出定位問題所在,有時候錯誤提示不夠清晰時,可以新增--debug --statcktrace等引數獲取進一步的資訊。
憑經驗,透過猜測,能解決問題那是最好的,不過,對於大多數人或者大多數情況來說,根據日誌,確定問題所在再行處理才是解決問題的正道。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/6906/viewspace-2055137/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 使用Jenkins自動構建Android應用打包並上傳JenkinsAndroid
- Mac 環境下 Android 使用 Jenkins 構建自動化打包MacAndroidJenkins
- Jenkins + GitHub 自動構建JenkinsGithub
- jenkins流水線自動構建配置Jenkins
- 這應該是最全的Jenkins Android自動打包構建教程JenkinsAndroid
- Jenkins自動化前端專案構建Jenkins前端
- jenkins自動構建前端專案(window,vue)Jenkins前端Vue
- Android中使用WebView遇到的問題總結:AndroidWebView
- Jenkins + Gitee 實現程式碼自動化構建JenkinsGitee
- Jenkins 構建自動化 .NET Core 釋出映象Jenkins
- [凡文]Docker+Jenkins+Gradle+GitLab在Linux服務端自動化構建Android包DockerJenkinsGradleGitlabLinux服務端Android
- Android 日常開發問題總結Android
- springboot使用問題總結Spring Boot
- Fiddler 使用問題總結
- 【06】Jenkins:Gitlab 自動觸發構建以及釘釘通知JenkinsGitlab
- 架構-穩定性建設邏輯問題實戰總結架構
- ?(不要錯過!)【CI/CD技術專題】「Jenkins實戰系列」(4)jenkins+pipeline構建自動化部署Jenkins
- jenkins配置android自動打包平臺JenkinsAndroid
- Android Flutter混合開發問題總結AndroidFlutter
- Android學習: 疑難問題總結Android
- Jenkins 實現Gitlab事件自動觸發Jenkins構建及釘釘訊息推送JenkinsGitlab事件
- docker-compose+ jenkins + gogs+ maven自動化構建與部署DockerJenkinsGoMaven
- ryu啟動問題總結
- Mac Jenkins 構建 Android App 時動態設定程式碼引數MacJenkinsAndroidAPP
- Android Gradle Groovy自動化構建進階篇AndroidGradle
- android單元測試遇到問題總結Android
- Android Flutter混合開發問題總結(二)AndroidFlutter
- 求解救:使用 docker 啟動 jenkins 遇到的問題。DockerJenkins
- Jenkins + GitLab 通過 Webhook 自動觸發構建爬坑記錄JenkinsGitlabWebHook
- Gitlab利用Webhook實現Push程式碼後的jenkins自動構建GitlabWebHookJenkins
- app 自動化 (真機)+jenkins 進行執行問題APPJenkins
- 總結下 ui 自動化驅動架構UI架構
- 滑動視窗問題總結
- Android app自動更新總結(已適配9.0)AndroidAPP
- Gradle自動實現Android元件化模組構建GradleAndroid元件化
- Android入門教程 | 使用 ConstraintLayout 構建自適應介面AndroidAI
- 基於gitee WebHook完成程式碼提交就觸發Jenkins自動構建GiteeWebHookJenkins
- 新手避坑 -- 用 Jenkins +miniprogram-ci 自動構建微信小程式Jenkins微信小程式
- K8S+Jenkins自動化構建微服務專案(後續)K8SJenkins微服務