我想在构建服务器上用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