您好,登錄后才能下訂單哦!
本文主要給大家介紹鏈接mysql的Project build出錯解決方法,文章內(nèi)容都是筆者用心摘選和編輯的,具有一定的針對性,對大家的參考意義還是比較大的,下面跟筆者一起了解下鏈接mysql的Project build出錯解決方法吧。
在開發(fā)unity3d過程中會用到.net的一些類庫,但是當(dāng)你運行的時候發(fā)現(xiàn)時沒有問題的,但一旦發(fā)布問題就出現(xiàn)了,然后摸索嘗試解決了問題。
一.問題出現(xiàn)
我們在當(dāng)前的一個U3D項目中使用了StriveEngine作為通信組件與服務(wù)端進行通信,在U3D環(huán)境中,編譯運行一切正常,但在打包發(fā)布(Build)為PC版本可執(zhí)行文件時,卻出現(xiàn)錯誤:“ArgumentException: The Assembly System.Management is referenced by StriveEngine. But the dll is not allowed to be included or could not be found.”
最初,我以為是簽名或者是加密混淆的問題,于是我使用原始編譯生成的StriveEngine.dll,問題一樣存在。
接著,我再猜測可能是StriveEngine.dll編譯時選擇平臺的問題,于是把目標(biāo)平臺由anycpu更改為x86,重新生成StriveEngine.dll,并且在u3d打包發(fā)布也選擇x86,如下圖所示:
但是,問題依然存在。
二.解決方案
經(jīng)過一番折騰,終于發(fā)現(xiàn)需要設(shè)置一下U3D所使用的.NET版本 -- 點擊Player Settings按鈕,找到Api Compatibility Level選項,選擇".Net 2.0",而非".Net 2.0 Subset",如下圖所示:
這個選項的意思是說,要使用.NET 2.0的完整版本,而非其子集。經(jīng)過此設(shè)置,終于可以打包發(fā)布成功。
究其原因,看來是因為StriveEngine所使用的是完整版本.NET 2.0。
三.又現(xiàn)困境
由于我們的游戲會打算發(fā)布一個輕量級的Web版本,于是,我們嘗試將其打包發(fā)布為Web版,god,同樣的問題又出現(xiàn)了,而且,在發(fā)布Web版本的情況下,Api Compatibility Level是不可選擇的。
猜測發(fā)布Web版本只能使用.Net 2.0 Subset。
四.如何走出困境?
如果發(fā)布Web版本就只能使用.Net 2.0 Subset這個猜想是正確的,那么,我想基于.Net 2.0 Subset開發(fā)一個StriveEngine.U3D.dll,使其可以被打包發(fā)布到各種不通類型的平臺。
看完以上關(guān)于鏈接mysql的Project build出錯解決方法,很多讀者朋友肯定多少有一定的了解,如需獲取更多的行業(yè)知識信息 ,可以持續(xù)關(guān)注我們的行業(yè)資訊欄目的。
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。