Quick-cocos2d-x項目移動資源文件的位置后Xcode 找不到這樣的文件或目錄:no such file or directory

這幾天遇到一個這樣的問題:

我有2個文件夾分別是res和src,原先是在SlotsGame_pro文件夾下面的。我先去Xcode中Delete,然后Remove Reference。然后在Finder里面移動2個文件夾到SlotsGame_pro/frameworks/runtime-src/proj.ios_mac里面,然后再拖進(jìn)項目中,結(jié)果運行報錯

res和src文件夾移動前的位置截圖
移動位置前先在項目中刪除2個對應(yīng)的文件夾
如圖,選擇移到廢紙簍

移到廢紙簍之后,再從廢紙簍把res和src2個項目在finder中移動到目的地:

res和src文件夾移動后的位置截圖

移動之后導(dǎo)入項目中

移動位置并導(dǎo)入到項目中之后運行報錯

然后我各種逛貼吧,搜索對應(yīng)的問題。期間試過去Build SettingBuild Phases中尋找有沒有對應(yīng)的路徑,若是有則刪除,可是沒找到。然后還試過了去Build Phases中去Copy Bundle Resources中刪除對應(yīng)的res和src文件夾再重新自己導(dǎo)入一遍,結(jié)果還是不行(PS:Copy Bundle Resources中的文件夾是自動生成的)

就在我有些放棄的時候,我突然看到警告的開頭的位置有這樣的字眼:(由于這個警告太長了,一般都是只看結(jié)尾,而不看它報錯的開頭)

由于出錯的報告內(nèi)容太長了,導(dǎo)致一開始就沒有注意去看這個開頭,后面慧慧哥聽我說這2個文件是cocos文件,修改位置之后編譯報錯才想到叫我滾動上來看看報告的開頭,我才去滾動上去看這個開頭
如圖,修改文件夾位置之后未修改這里的路徑,導(dǎo)致編譯出錯

這個時候我去Build Phases中找到Run Script選項,發(fā)現(xiàn)原來是這里的路徑在文件夾移動位置之后沒有修改,修改之后運行,一切OK。

改成如圖路徑之后,編譯運行OK

在這里,補充一下Xcode中的Create groups for any added folders和Create folder references for any added folders的區(qū)別:

選擇Create groups方式添加一個文件,添加進(jìn)來的文件的文件夾是黃色的

選擇 Create folder references方式添加進(jìn)來的文件的文件夾是藍(lán)色的

兩種方式的區(qū)別:

1.Create groups

為新增加的文件夾創(chuàng)建組,我們在項目中可以手動添加一個groups(右鍵點擊選擇New Group),但是手動添加的groups實際上并不會存在于項目的目錄中,被添加進(jìn)groups中的文件仍在位于它原來所在的位置,但是從外部引入進(jìn)來的groups并不會如此,正如我們剛才那樣。groups一旦被創(chuàng)建或添加,都是以黃色文件夾的形式存在的,當(dāng)你想要使用文件夾中的某個類的頭文件時,可以直接添加它的引用,因為groups下的cpp文件是會被編譯的。

2.Create folder references

只是將文件單純的創(chuàng)建了引用,這些文件不會被編譯,所以在使用的時候需要加入其路徑,比如在我們想要使用demo文件夾下面有某個頭文件,則需要按照下面的方法添加聲明:#include demo/xxx.h,否則會提示錯誤:xxx.h not found

至于Destination對應(yīng)選項,當(dāng)你選擇了這個選項時,如果你想要引入的文件不在你的項目文件的目錄下,Xcode則會自動將這個文件復(fù)制一份拷貝到你的項目的目錄下,如果你不選擇,并且這個文件也并不在你的項目目錄下,那么這個文件仍然可以被使用,但是一旦你將項目拷貝到了別的地方時,這個文件就會找不到了。因為這個文件在你的電腦中,而不在你的項目中。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容