最近公司測試人員反映以前的iOS產品包重新編譯會出現報錯的問題,報錯的位置是在引用第三方Framework頭文件的地方,大概的報錯提示是"XXXFramework/XXXHeader.h file not found"
很神奇的問題,因爲同樣的源碼原來自己在打包測試的時候完全沒有問題,QA測試也是通過的。據測試同事反映,出現問題的源碼都是在Windows打包然後在Mac上解壓的,而如果直接在Mac上從源碼服務器拉代碼下來編譯就沒有問題
所以問題應該出在Windows上打包源碼上,最後查到是因爲用的Framework中頭文件是用軟鏈接的形式進行鏈接,在Windows上這個軟鏈接會失效,導致在Windows上打包的源碼中這個Framework沒有軟鏈接,即使在Mac上解壓也不能恢復。
臨時解決問題的辦法就是:用Mac上正常帶軟鏈接的Framework文件替換有問題的Framework文件。
爲了防止出現類似的問題,最好還是避免在Windows打包iOS源碼