繁体   English   中英

使用 MSBuild 构建解决方案文件夹

[英]Build a solution folder with MSBuild

我们有一个解决方案文件,其中包含一些解决方案文件夹:库、单元测试、应用程序...

使用VS2010 ,我们可以通过右键单击它并使用“build”或“rebuild”来仅构建给定文件夹的项目。

这在开发人员的工作站上是完美的,我们希望在使用MSBuild的持续集成服务器上做同样的事情。

那么,我们可以用 MSBuild 建立一个解决方案文件夹吗?

还是我们必须为每个文件夹创建一个专用的解决方案?

提前感谢您的帮助。

最终编辑:以下回复的结论是,他们没有内置的方法可以做到这一点,但有一些解决方法:

  • 仅使用选定的项目创建专用解决方案
  • 使用将构建选定项目的专用 csproj
  • 添加一个新项目,该项目将引用现有解决方案文件中的选定项目

我选择使用专用的解决方案文件,因为它的侵入性和技巧性更小,虽然不是更灵活(专用的 csproj 解决方案应该提供完全控制)。

是的,您可以使用 MSBUILD 构建解决方案文件夹

msbuild "framework.sln" /t:First\Project:Build

将在名为 First 的文件夹中构建项目,但是磁盘文件夹和解决方案文件夹必须匹配(我在他们不首先尝试的解决方案中尝试了它)

因此,您所要做的就是选择一个项目,该项目将该文件夹中的所有其他项目作为依赖项。

另请参阅: http://msdn.microsoft.com/en-us/library/ms164311.aspx

简短的回答是:

的,如果您想使用普通的 MSBuild构建特定的项目集(在 VS 解决方案中组合在一起),您将必须为要构建的每个特定项目集创建一个专用的 MSBuild.proj。

您不必创建(和维护)VS 解决方案来支持您的构建,但最终它是相同的(MSBuild.proj 与 VS 解决方案)。

我有一组 60 多个 .NET 项目(.btprpj BizTalk)的类似场景。 为了在 VS 中开发,这些项目目前被组织在 12 个 VS 解决方案中。

对于自动构建和部署,我创建了一组 50 多个 MSBuild.proj 脚本来定位我需要的每一个组件(或一组组件)。

MSBuild 为围绕 VS 项目的实际构建(从 VCS 导出等)自动化所有东西提供了很多可能性。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM