【发布时间】:2016-02-03 18:31:52
【问题描述】:
我正在尝试在我的构建服务器上使用 MSBuild 命令行构建我的解决方案。 但是,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 的错误。
有谁知道我做错了什么?感谢您的帮助。
【问题讨论】:
-
谢谢,但第一个答案涉及间接引用,但对我来说,直接引用甚至没有被复制,因此构建失败。第二个答案涉及引用项目的内容文件,到目前为止这对我来说不是问题。
-
你有机会解决这个问题吗?我有类似的
标签: c# vb.net visual-studio msbuild bamboo