代码之家  ›  专栏  ›  技术社区  ›  Jamie Hale

我如何使用像nant这样的工具进行大规模构建,但仍然允许开发人员使用vs-ide?

  •  1
  • Jamie Hale  · 技术社区  · 17 年前

    我们在2008年有一个很大的代码库。我们的开发人员需要依赖VsIDE进行日常开发。但是我们也有复杂的依赖关系和部署步骤,并且需要一个自动化的夜间构建。

    我熟悉南特。它非常适合于我们的IDE外构建和部署步骤。不幸的是,我还没有看到将其构建步骤集成到IDE中的好方法。例如,开发人员希望能够通过ctrl-shift-b来构建。我已经看到了将nant添加为外部构建工具的步骤,但这不允许开发人员双击错误以跳转到源代码。

    最近msbuild足够好吗?还有别的吗?我不敢相信我们是第一个处理复杂的构建和挑剔的开发人员。

    编辑:我从 this question and answers 如果我想要完整的IDE集成,那么msbuild可能会是一个不错的选择。有什么反对意见吗?

    3 回复  |  直到 16 年前
        1
  •  2
  •   Sayed Ibrahim Hashimi    17 年前

    好吧,我有点偏袒,但是msbuild显然是一条必经之路。当前,msbuild用于生成Visual Studio本身,因此它是有能力的。还有一个新版本的带有Visual Studio 2010的msbuild( 实际上.NET 4.0 这将有一系列增强功能,包括构建C++项目。

    易卜拉欣·哈希米说

    我的书: Inside the Microsoft Build Engine : Using MSBuild and Team Foundation Build

        2
  •  2
  •   Shawn    16 年前

    msbuild是一种方法,这样您就可以在vs解决方案中而不是在nant脚本中管理依赖项配置。msbuild还将运行在vs项目中设置的生成前和生成后命令,但是某些vs特定的属性不可用。您可以让nant在解决方案文件上运行msbuild。

    我在一个有点复杂构建的项目上工作。我们使用Cruise Control进行持续集成,它检查SVN的修改,然后调用nant脚本,然后调用msbuild target。所有的部署都是从那里开始的。开发人员可以在不需要了解其部署方式的情况下进行构建和调试,这使得引入新开发人员变得容易,并且使他们只关注开发,并让发布管理器管理构建和部署。

        3
  •  0
  •   David    16 年前

    你试过了吗? 纽巴德 ?它非常适合开发人员进行“本地构建”。此外,它还将通过让开发人员在早期(而不是在将其签入源代码管理之后)捕获它们来减少构建失败。一旦它被设置好,它就和在批处理文件中执行命令来构建项目一样简单。试一试-

    http://nubuild.codeplex.com

    推荐文章