【问题标题】:Should NuGet used as a build automation tool?NuGet 应该用作构建自动化工具吗?
【发布时间】:2014-06-17 12:41:52
【问题描述】:

我完全是 .net 菜鸟,并尝试用竹子自动构建 .net。似乎大多数人使用 Nant/Msbuild 作为构建工具,但这些工具并不管理项目依赖项。

我想要一个像 maven 这样的工具来处理依赖管理和构建过程。当我查看文档时,NuGet 似乎只管理依赖项。我应该使用 NuGet 来处理构建吗?还是应该将 NuGet 与 Nant/MSBuild 一起使用?

【问题讨论】:

    标签: .net nuget build-automation nant bamboo


    【解决方案1】:

    你的想法是对的。 Nuget 是一个包管理器,可以根据需要解决依赖关系。然后 MSBuild 是将您的项目编译成可以执行的程序集的编译器。当 MSBuild 编译您的项目时,您的项目可以配置为使 Nuget 解决所有依赖项(也称为“恢复包”),我认为您正在寻找。

    如果您想在构建时恢复包,请在 Visual Studio 中右键单击解决方案(通常是解决方案资源管理器中最顶部的项目)并选择启用 NuGet 包恢复。然后将生成的 .nuget 文件夹提交到版本控制以供 MSBuild 使用。

    【讨论】:

    • “启用 NuGet 包还原”将设置解决方案以使用 MSBuild 集成包还原。虽然这确实有效,但 NuGet 团队建议改用自动包还原(如果您在 VS 之外构建,则使用命令行包还原)。 docs.nuget.org/docs/reference/package-restore
    【解决方案2】:

    来自 NuGet 主页。

    NuGet 是 Microsoft 开发平台的包管理器 包括.NET。 NuGet 客户端工具提供了生成 并消费包裹。 NuGet 库是中心包 所有软件包作者和消费者使用的存储库。

    它不是像 Maven 这样的构建工具。 MSBuild 可能是最接近您正在寻找的东西。

    【讨论】:

    • 我猜是这样,但想确定一下。是否有任何工具可以解决 .net 世界中的 maven 之类的依赖+构建,还是我应该使用 nant + nuget?行业标准是什么?
    猜你喜欢
    • 2019-03-22
    • 2010-11-10
    • 1970-01-01
    • 1970-01-01
    • 2016-09-18
    • 2018-07-17
    • 1970-01-01
    • 1970-01-01
    • 2022-12-03
    相关资源
    最近更新 更多