【发布时间】:2013-11-25 12:04:30
【问题描述】:
我正在尝试使用 TeamCity 中的 msbuild 来配置 buildserver 以准备构建。一切似乎都很好,除了 msbuild 没有通过项目引用复制引用的库,例如我有一个使用 SSH.NET 的项目,而我的 Web 应用程序使用该项目,但我不能强制 msbuild 将该 SSH.NET 库复制到 Web 应用程序发布文件夹。
我使用这个 msbuild xml:
<MSBuild Projects="$(WebAppDir)\WebApp.csproj"
Targets="ResolveReferences; _WPPCopyWebApplication"
Properties="Configuration=$(Configuration); Platform=$(Platform); WebProjectOutputDir=..\$(ReleaseOutputDir)\$(WebAppDir)\"
/>
我也尝试过使用SLN builder。使用此构建器 Teamcity 会复制所有库,但它不是发布构建。
我试图做什么?检查SO上的其他线程,我试过了:
- 在依赖项目的csproj文件中添加标签
<private>True...; - 将引用库的属性更改为所有可能的值:将本地复制为 true、false、内容等;
-
我也尝试使用
nuget installer步骤来解析引用。但这对我都不起作用。
Mb 还有另一种方法可以在 msbuild 中获取 Web 应用程序的发布版本吗?或者我应该如何让 msbuild 准备构建与 Visual Studio 手动发布命令构建相同?
【问题讨论】:
-
您是否尝试过使用内置的发布配置文件?在后台使用 MSBuild,但设置起来要容易得多。查看 Troy Hunt 的这篇精彩文章。帮了我很多troyhunt.com/2010/11/you-deploying-it-wrong-teamcity.html
标签: dll reference msbuild copy teamcity