我想在構建服務器上用MSBuild命令行構建我的解決方案。 但是,MSBuild不會將任何dll複製到bin文件夾,因此後續目標失敗。MSBuild不會直接將引用的dll複製到bin文件夾
我的解決方案由幾個只包含一個項目的項目組成。該項目在應該在之前構建的相同解決方案中引用其他項目。
項目文件中的所有參考都設置爲<Private>true</Private>
。
這裏是我的MSBuild命令:
Msbuild solution.sln /m /p:BuildInParallel=true /p:VersionNumber=1.2.3.4
"/t:Rebuild" /p:Configuration=Release /p:WebProjectOutputDir=publish\
"/p:GitVersion=abcdef (abcdef)" /p:OutDir=publish\bin\ /p:RunOctoPack=true
當我建立在Visual Studio(2012年或2013年)的bin文件夾中創建獲取所有所需的DLL複製到bin文件夾中的項目。 Visual Studio將dll複製到bin文件夾後,MSBuild命令將工作,直到我更改了任何引用的dll。
我讀了一些關於間接引用不被複制的帖子,但對我而言,即使是直接引用也不會被複制。
我也嘗試調用像ResolveReferences
這樣的目標,但總是得到target ResolveReferences does not exist in the project solution.sln
的錯誤。
有誰知道我在做什麼錯?謝謝您的幫助。
試試這些:http://stackoverflow.com/questions/1132243/msbuild-doesnt-copy-參考-dlls-if-using-project-dependencies-in-solution http://stackoverflow.com/questions/14322391/msbuild-to-copy-dynamically-generated-files-as-part-of-project-dependency – BarrieK
謝謝但第一個答案處理間接引用,但對我來說,直接的引用不會被複制,因此構建失敗。第二個答案涉及引用項目的內容文件,這對我來說不是問題。 –
你有機會解決這個問題嗎?我有類似的 – Artyom