【问题标题】:What is the point of command line C# compilation?命令行 C# 编译有什么意义?
【发布时间】:2012-02-19 05:16:43
【问题描述】:

我一直使用 Visual Studio 来做这件事,甚至 MSDN 在编译和部署场景中也反复提到命令行方法。

This guy 想做only 命令行,并被称赞为铁杆,但我看不到这样做的意义。我错过了什么?

【问题讨论】:

  • 不使用 Visual Studio 有时是一个明确的优势;)而且有些人喜欢使用不同的编辑器,例如 ViM 或 Emacs,只是因为他们已经习惯了。
  • 命令行工具通常有助于简化自动化。自动化通常有助于让您的工作更轻松。

标签: c# csc


【解决方案1】:

正如其他人所说,持续构建和自动化是使用命令行工具的很好理由。如果你想要一个可靠的部署过程,你必须有一种自动化的方式来构建和部署。如果您的部署过程包括启动 Visual Studio、加载项目、编译,然后手动将输出复制到部署目录,那么您将受到部署问题的困扰。您最终会得到部分构建、旧版本、忘记某些关键步骤等。

我发现 IDE 对开发和调试至关重要。但我发现可靠地构建、测试和部署的唯一方法是自动化流程。

【讨论】:

    【解决方案2】:

    像持续集成服务器这样的自动构建工具通常使用命令行 C# 编译器。花一些时间在 Linux 世界中,您将了解命令行的价值。

    【讨论】:

    • 他们通常不会直接使用编译器,而是使用构建工具 msbuild。
    • 当然,但重点是一样的。我们使用 make 或 ant,而不是 gcc 或 javac,但最终结果是等价的。
    【解决方案3】:

    一个很大的用途是您可以在更大的一键式构建过程中自动运行它。拥有一个显示“打开 Visual Studio,打开解决方案,按 F6”或任何构建键的自动化脚本有点困难(或者至少是不必要的复杂)。

    【讨论】:

      【解决方案4】:

      一方面,如果您将项目加载到持续集成服务器中,您将需要使用命令行方法进行自动构建。我猜这是它最常见的用途,但我敢肯定还有其他用途。

      【讨论】:

        猜你喜欢
        • 2015-01-05
        • 2021-05-17
        • 1970-01-01
        • 2016-07-05
        • 2016-01-01
        • 1970-01-01
        • 1970-01-01
        • 2017-04-15
        • 2016-05-08
        相关资源
        最近更新 更多