iOSer 流動性大,到了新公司往往會接手公司之前的舊項目,有之前iOSer維護(hù)的還好,能跑起來。往往會有公司外包給三方公司的項目,年代久遠(yuǎn),版本低,等等問題,運(yùn)行不起來。下面我就分析下我接手項目的問題,以及如何解決的,希望對大家有所幫助。
運(yùn)行Xcode結(jié)果如下圖:

問題一:

問題描述:可以看到問題居然出現(xiàn)pods里面,個人嘗試了很多方法(1.更新pod:pod install--->無效 2.不使用pod,直接導(dǎo)入--->無效)
解決:刪除pod 重新導(dǎo)入一次pod ,可以徹底解決pod里面庫不能引用問題(可能原因:之前的Xcode版本低,或者庫的關(guān)聯(lián)被修改等)
具體步驟可以參考:http://www.itdecent.cn/p/5ffb2418354f
問題二:
問題描述:pch文件引用
解決:?項目---TARGETS---Build Settings---Prefix Header(使用相對路徑,$SRCROOT/...XXX.pch)
PreCompile Prefix Header 設(shè)置為Yes
具體操作如下圖:

問題三:
問題描述:Xcode 報錯 /usr/local/bin/carthage : No such file or dictionary
解決:
首先檢查Mac是否安裝Carthage ? :carthage --version
1.如果沒安裝,點(diǎn)擊 The missing package manager for macOS (or Linux) — Homebrew?安裝?
brew update
brew install?carthage?
2.如果還報錯,項目---TARGETS---Build Phases?- Carthage(或者Run Script) ?查看地址是否正確,usr前面切記有“/”

3.倘若還未解決,直接刪除?Run Script ,清理Xcode DerivedData?
具體操作:右鍵點(diǎn)擊Finder--->前往文件夾--->輸入 /Users/用戶名/Library/Developer/Xcode/DerivedData , 刪除DerivedData 目錄下的文件,clean工程,重啟Xcode。
問題四:
問題描述:項目可以Build Success起來,但是會直接崩潰。
錯誤如下:
dyld: Library not loaded: @rpath/XXXX.framework/XXXX
Referenced from: /private/var/mobile/Containers/Bundle/Application/CEA6C4C1-C211-460C-8ECF-4FD9C66F1016/iOS XXXX.app/iOS XXXX
Reason: image not found
解決:項目---TARGETS---General---Embedded Binarles,點(diǎn)擊“+”,把 報錯對應(yīng)的?XXXX.framework 添加進(jìn)來即可。

項目終于Run成功了。。。
