我得到了一些奇怪的問題複製在這裏,有一個在Visual Studio中正常地構建一個軟件,所有引用其中使用的NuGet,並將Newtonsoft.Json.dll是包文件夾以及該文件夾的參考點。Newtonsoft.Json.dll正在從錯誤的位置,在構建服務器
在構建服務器建立的情況下,我們注意到測試失敗,並會進一步發現,其實拷入Newtonsoft.Json.dll是錯誤的,從混合文件夾。
從生成日誌:
複製文件從 「d:\ APPS \微軟的Visual Studio 12.0 \混合\ Newtonsoft.Json.dll」 到「d:\ TB \ 2 \ PLWRO,WebPP \ WebPP-主要-DEV-CI \ BIN \ Newtonsoft.Json.dll」。
爲了解決它,我將混合文件夾中的Newtonsoft.Json.dll更名爲另一件事,然後構建按預期正常工作。
我的問題是,WHYYY?!?!?似乎構建正在Blend文件夾中查找引用,而不是提示路徑中的設置位置 - 請參見下文。
<Reference Include="Newtonsoft.Json, Version=4.5.0.0, Culture=neutral, PublicKeyToken=30ad4fe6b2a6aeed, processorArchitecture=MSIL">
<SpecificVersion>False</SpecificVersion>
<HintPath>..\..\packages\Newtonsoft.Json.7.0.1\lib\net45\Newtonsoft.Json.dll</HintPath>
</Reference>
其實v4.5.0.0是指正確的包,如果你嘗試添加的包,你會看到那個版本的「包含」爲好。爲什麼「私人」是「真實的」應該起作用?爲什麼這隻應該與這個包不同? – Fabito