MSbuild是否要求在构建服务器上安装Visual Studio?

时间:2014-06-30 05:45:50

标签: visual-studio-2010 visual-studio-2012 build msbuild nant

我们可以在没有Visual Studio 2012的情况下使用MSBuild吗?

目前,我们有一个构建服务器,我们正在编译和创建其中一个项目的部署副本,它已安装Visual Studio Professional Edition。我们现在正在建立一个新的构建服务器。我们真的需要在新的构建服务器上使用Visual Studio 2012吗?

如果是,那怎么样?我用谷歌搜索了,但我找不到答案。

7 个答案:

答案 0 :(得分:57)

我们花了很多时间试图让Build Server在没有Visual Studio的情况下工作。 我们不使用TFS进行构建,因此我不确定上述许可证豁免适用于我们。也没有安装Visual Studio可以帮助您真正了解您的软件如何构建并获得正确的引用。

我们已经看到很多项目的解决方案示例,其中包含同一软件的参考资料,其中一些是与解决方案一起提供的nuget软件包,另一些是指向"程序文件中的位置"未安装Visual Studio的计算机上不存在的路径。一旦你尝试构建没有安装VS的软件,你就可以真正看到"自包含"你的申请是。

在我开始列出您通常需要安装的内容之前,我要指出MS Build现在不再被认为是.NET框架的一部分,但是它随Visual Studio一起提供,但也可以单独安装。有关详情,请参阅此博客文章:http://blogs.msdn.com/b/visualstudio/archive/2013/07/24/msbuild-is-now-part-of-visual-studio.aspx

大多数构建需要安装以下软件,例如,如果要创建可移植类库,可能还有其他软件。

  1. Microsoft Build Tools 2013
  2. Web Deploy 3.5(适用于打包应用程序)
  3. Microsoft .NET Framework 4.5.1 Developer Pack
  4. Microsoft .NET Framework 4.5.2 Developer Pack
  5. Windows Software Development Kit (SDK) for Windows 8(您可以使用SDK构建面向这些操作系统的应用程序:Windows 8,Windows 7,Windows Vista,Windows Server 2012,Windows Server 2008 R2,Windows Server 2008)
  6. 需要复制以下目录:

    1. 参考程序集(需要从运行Visual Studio的计算机从/到目录C:\ Program Files(x86)\ Reference Assemblies复制)
    2. 公共程序集(需要从运行Visual Studio的计算机复制到目录C:\ Program Files(x86)\ Microsoft Visual Studio 12.0 \ Common7 \ IDE \ PublicAssemblies
    3. 我们也使用Wix,因此我们安装以下内容:

      1. WIX Toolset 3.8
      2. 我有一个类似的测试集,但这不是问题的一部分所以我会把它关掉!

        希望这有助于某人。

        更新:2017年3月3日

        Microsoft最近回应了长期用户语音请求" Support .NET Builds without requiring Visual Studio on the server"要求将Visual Studio安装在要删除的构建服务器上。

        来自download page"这些构建工具的描述允许您构建本机和托管的基于MSBuild的应用程序,而无需Visual Studio IDE。"尚未测试但在RTM之后我将查看此内容并在此处提供进一步的更新。

        有一个blog post承诺这些构建工具安装所有先决条件,并可用于构建基于MS Build的应用程序。

答案 1 :(得分:37)

不,您在构建框中不需要Visual Studio。如果我没记错的话,msbuild是作为.NET框架的一部分安装的 - 它当然是。

根据您正在构建的内容,您可能会发现,如果您确实安装了Visual Studio,那么某些更容易使用 - 比如便携式类库配置文件。虽然通常有非VS安装程序可用,但我发现安装Express edition Visual Studio只是为了获得捆绑的构建目标更简单。

答案 2 :(得分:15)

请记住:构建Visual Studio解决方案的最简单方法是在构建服务器上安装Visual Studio。即使Visual Studio Express也足够了。

那就是说,没有它你可以让它工作。但有时需要做很多工作才能搞清楚。您需要安装正确的Windows / .NET Platform SDK。您可以并排安装多个这些SDK。现在,当您依赖于A SP.NET MVC 5Entity Framework 6时,您可能需要安装更多SDK才能使您的应用程序进行编译。这些的下载都假设您还安装了Visual Studio,但是它们的许多有效负载也可以单独安装。这可能会变得很麻烦。

就我个人而言,我已经厌倦了试图找出哪些安装程序能够实现哪些功能。但这也是由于Microsoft允许您使用与开发计算机相同的许可证在构建服务器(TFS)上安装Visual Studio,只要您是MSDN订阅者即可。 Check the Visual Studio License Whitepaper for more details

  

在构建服务器上使用Visual Studio

     

如果您拥有一个或多个带有MSDN的Visual Studio Ultimate,带有MSDN的Visual Studio Premium或Visual的许可用户   使用MSDN的Studio Professional,您也可以将Visual Studio软件安装为Team Foundation Server的一部分   2013年建立服务。这样,您无需购买Visual Studio许可证即可覆盖Visual Studio的运行   为其操作启动构建的每个人的构建服务器。

如果您和我一样,希望将来更改此内容,建议您通过Visual Studio User Voice提交请求或投票选出现有的请求来确保您听到。

答案 3 :(得分:5)

以下是对此的快速了解。

您的构建计算机应尽可能地分离开发工具。话虽如此,并且正如其他人已经说过的那样,MSBuild可以独立于Visual Studio运行,它应该!

如果您的构建需要运行Visual Studio,那么您很可能遇到应该解决的解决方案或项目架构问题。

答案 4 :(得分:0)

不需要安装Visual Studio。 MSBuild是.net SDK的一部分。

如果您正在使用它们,则需要安装其他.net依赖项。 MSTest或Team Foundation的任何内容都需要安装Visual Studio。

答案 5 :(得分:0)

我相信您只需要MSBuild(这是您正在定位的.NET框架的一部分)。

确保安装正确的.NET发行版

以下是构建服务器的好地方,它有开发人员工具。

.NET Framework 4.5.1 Developer Pack安装.NET Framework 4.5.1的多目标包。开发人员可以使用Visual Studio 2012或第三方IDE构建面向.NET Framework 4.5.1的应用程序。如果要重新分发.NET Framework 4.5.1,则需要下载Web安装程序而不是此软件包。

http://www.microsoft.com/en-us/download/details.aspx?id=40772

祝你好运。

答案 6 :(得分:0)

C ++:

有一个" Build Tools"包含MSBuild,不需要Visual Studio。

来自官方文件:

  

这些工具允许您构建C ++库和应用程序   定位Windows桌面。它们与您找到的工具相同   Visual Studio 2015在可编写脚本的独立安装程序中。现在你只   需要下载构建C ++项目所需的工具。

管理:

同样适用:Build Tool Managed