詳細(xì)的安裝過程網(wǎng)上很多教程,這里就不在敘述,只記錄一點遇到的問題劲藐。
問題一:拉取git源碼提示的錯誤
ERROR: Error fetching remote repo 'origin'
-
關(guān)于源碼畦贸,我用的gitlab的陨闹,gitlab上面ssh處添加.ssh/id_rsa的公鑰
源碼配置 - jenkins寫完倉庫地址后
git@111.11.11.11:ixxxx.git
點擊下面Credentials的Add添加如下格式,然后Credentials選擇剛才的配置
195A9586-FF4D-4D7B-A561-32F32F0331E0.png
問題二:鑰匙串keychain和描述文件 Provisioning profile錯誤
安裝插件
到Jenkins系統(tǒng)管理中找到它
到
/Users/用戶名/Library/Keychains/login.keychain
找到login.keychain
或者login.keychain-db
上傳薄坏,如果是login.keychain-db
建議復(fù)制一份為login.keychain
然后上傳趋厉,因為上傳要求的文件后綴為keychain
或者描述文件。
如果還有keychain錯誤就到
/Users/用戶名/Library/Keychains/login.keychain
拷貝到
/Users/Shared/Jenkins/Library/Keychains
目錄下胶坠,沒有就一級級創(chuàng)建出來君账。
如果報描述文件不匹配找不到之類的就到
/Users/用戶名/Library/MobileDevice/Provisioning\ Profiles
拷貝里面的描述文件到
/Users/Shared/Jenkins/Library/MobileDevice/Provisioning\ Profiles
目錄下,沒有就一級級創(chuàng)建出來沈善。
還不懂的話可以參考此插件的一些
Keychains and Provisioning Profiles使用說明
問題三:CopyPNGFile failed或者Can't exec Usage: xcscontrol
具體錯誤如下
CopyPNGFile build/Debug-iphoneos/CloudShop.app/Menu_MyEarnings@3x.png Resources/Images/Menu_MyEarnings@3x.png
cd /Users/Shared/Jenkins/Home/jobs/test/workspace
export PATH="/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin:/Applications/Xcode.app/Contents/Developer/usr/bin:/usr/bin:/bin:/usr/sbin:/sbin"
/Applications/Xcode.app/Contents/Developer/usr/bin/copypng -compress -strip-PNG-text /Users/Shared/Jenkins/Home/jobs/test/workspace/Resources/Images/Menu_MyEarnings@3x.png /Users/Shared/Jenkins/Home/jobs/test/workspace/build/Debug-iphoneos/CloudShop.app/Menu_MyEarnings@3x.png
execvP: /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin: path too long
execvP: /Applications/Xcode.app/Contents/Developer/usr/bin: path too long
execvP: /usr/bin: path too long
execvP: /bin: path too long
execvP: /usr/sbin: path too long
execvP: /sbin: path too long
Can't exec "Usage: xcscontrol
-h, --help, --usage Prints usage information for xcscontrol
--version Displays version information
--preflight
The following build commands failed:
CopyPNGFile build/Debug-iphoneos/CloudShop.app/Menu_MyEarnings@3x.png Resources/Images/Menu_MyEarnings@3x.png
CopyPNGFile build/Debug-iphoneos/CloudShop.app/Menu_Recommend_Add@2x.png Resources/Images/Menu_Recommend_Add@2x.png
CopyPNGFile build/Debug-iphoneos/CloudShop.app/Menu_Settings@2x.png Resources/Images/Menu_Settings@2x.png
CopyPNGFile build/Debug-iphoneos/CloudShop.app/tabBarItemNoticeSel@3x.png Resources/Images/tabBarItemNoticeSel@3x.png
刪除Xcode目錄下的xcscontrol
/Applications/Xcode.app/Contents/Developer/usr/bin/xcscontrol
問題四:xcrun: error: unable to find utility "PackageApplication", not a developer tool or in PATH
Xcode升級到8.3后 用命令進(jìn)行打包 提示下面這個錯誤乡数。后面根據(jù)對比發(fā)現(xiàn)新版的Xcode少了這個PackageApplication
先去找個舊版的Xcode里面copy一份過來
放到下面這個目錄:
/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin/
然后執(zhí)行命令
sudo xcode-select -switch /Applications/Xcode.app/Contents/Developer/
chmod +x /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin/PackageApplication
最后附上PackageApplication下載地址PackageApplication下載地址
問題五:Jenkins上git出現(xiàn)Timeout的問題
jenkins上現(xiàn)有的git插件并沒有配置超時的選項,因此在clone項目時如果網(wǎng)絡(luò)差會出現(xiàn)“ERROR: Timeout after 10 minutes”闻牡,導(dǎo)致無法繼續(xù)構(gòu)建净赴。
網(wǎng)上找到一個解決方法:http://jenkins-ci.361315.n4.nabble.com/Windows-git-plugin-git-client-plugin-problems-td4690288.html
啟動Jenkins的時候加上
-Dorg.jenkinsci.plugins.gitclient.Git.timeOut=60
java -Dorg.jenkinsci.plugins.gitclient.Git.timeOut=60 -jar /usr/local/Cellar/jenkins/2.70/libexec/jenkins.war
war版的,改下tomcat的啟動配置罩润。
對于安裝版玖翅,需要修改Jenkins安裝目錄下的jenkins.xml,在arguments中增加該參數(shù)割以。例如:
<arguments>-Xrs -Xmx256m -Dhudson.lifecycle=hudson.lifecycle.WindowsServiceLifecycle -Dorg.jenkinsci.plugins.gitclient.Git.timeOut=60 -jar "%BASE%\jenkins.war" --httpPort=8080</arguments>
配置后重啟Jenkins金度,再次進(jìn)行構(gòu)建,超時設(shè)置便為60严沥。
問題五:keys_to_symbols':[31m[!] undefined method `each_with_object' for nil:NilClass[0m (NoMethodError)
Xcode打包生成的ExportOptions.plist 拷貝到
~/.jenkins/workspace/工程名/