問題1:使用VisualStudio2017社區版進行Unity開發時,由于使用了ILRuntime,因此業務邏輯代碼不能直接在Unity中寫,需要在另一個專案生成一個dll到Unity的檔案夾中。
我只需要這個dll本身,其他參考的dll都不需要復制過來,因為Unity主工程本身已經包含它們了。
問題是,雖然在每個參考的dll屬性中都確認設定了復制本地=false,但是仍然有一些dll被復制到了目標檔案夾中。
問題2:為了保證Unity工程和業務邏輯工程參考的dll一致,在業務邏輯工程中我直接復制了Unity工程中的dll參考路徑,這些dll都位于Unity編輯器的檔案夾中。但因為多臺機器的Unity安裝路徑不一樣,因此參考的路徑不能是絕對路徑。為此我創建了一個系統環境變數"UNITY_PATH",用于指定Unity編輯器的目錄。同時修改了業務邏輯工程的.csproj檔案的內容,使用 $(UNITY_PATH)指定參考到的dll路徑。理論上這些dll應該全都是在Unity編輯器檔案夾中的,但是問題1中那幾個被強行復制到了本地的dll,其參考被錯誤地定位到了系統的.net目錄中。對于這幾個dll,就算是使用絕對路徑也沒辦法讓VS回心轉意使用Unity編輯器路徑下的檔案。它們包括:
System.Data.Common; System.Net.Http; System.Diagnostics.StackTrace;System.Diagnostics.Tracing;System.Globalization.Extensions;System.IO.Compression;System.Net.Sockets.
uj5u.com熱心網友回復:
問題1可以通過生成后事件將不需要的dll洗掉掉:del ***.dll
ericzhou
uj5u.com熱心網友回復:
多謝回復。我使用del System.*.dll把這些檔案刪掉了uj5u.com熱心網友回復:
我剛好也遇到這個問題了,難頂。。。。轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/262228.html
標籤:其他技術討論專區
下一篇:求電商平臺詳細測驗用例
