Sh 打包報錯:errSecInternalComponent 和 CopySwiftLibs

yang152412發表於2018-12-12

最近 Jenkins 打包又報錯了:

Codesigning /Users/Shared/Jenkins/Home/workspace/***/build/DerivedData/Build/Intermediates.noindex/ArchiveIntermediates/***/InstallationBuildProductsLocation/Applications/***.app/Frameworks/libswiftCoreMedia.dylib
/usr/bin/codesign --force --sign 2A252DD1931364B8ED615013655551EEF4C66515 --verbose /Users/Shared/Jenkins/Home/workspace/***/***/build/DerivedData/Build/Intermediates.noindex/ArchiveIntermediates/***/InstallationBuildProductsLocation/Applications/***.app/Frameworks/libswiftCoreMedia.dylib
/Users/Shared/Jenkins/Home/workspace/***/***/build/DerivedData/Build/Intermediates.noindex/ArchiveIntermediates/***/InstallationBuildProductsLocation/Applications/***.app/Frameworks/libswiftCoreMedia.dylib: errSecInternalComponent

error: Failed with exit code 1

** ARCHIVE FAILED **


The following build commands failed:
	CopySwiftLibs /Users/Shared/Jenkins/Home/workspace/***/***/build/DerivedData/Build/Intermediates.noindex/ArchiveIntermediates/***/InstallationBuildProductsLocation/Applications/***.app
(1 failure)
複製程式碼

原因就是伺服器證書沒有了,然後又重新建立了一個,但是匯入進去之後就報錯。

網上說法是:

出現errSecInternalComponent 可能是xcode簽名機制(code signing mechanism) 的 bug, Xcode 中賬號多了,就會產生很多過期的PP檔案,Xcode 沒有自帶刪除功能會導致重複匯入provisioning profile. 解決辦法:

Xcode 中所有的PP檔案,都在 ~/Library/MobileDevice/Provisioning Profiles 這個資料夾下;進入該資料夾,刪除不需要的;重新匯入新的 provisioning profile

2、重啟Mac

但是這樣做之後沒有用,還是報錯。

最後參考這裡,

開啟命令列終端,進入工程根目錄,執行命令 xattr -rc . 還不行就刪除下面目錄的專案: /Users/denny/Library/Developer/Xcode/DerivedData/

參考:stackoverflow.com/questions/2…

xattr -rc . 用來刪除檔案的擴充套件屬性。

而且把證書刪除,又重新匯入了一遍,然後還把證書的信任設定改了下。

Sh 打包報錯:errSecInternalComponent 和 CopySwiftLibs
參考:github.com/fastlane/fa…

相關文章