【问题标题】:Is it possible to compile a C# project without MSBuild?是否可以在没有 MSBuild 的情况下编译 C# 项目?
【发布时间】:2015-11-11 14:28:29
【问题描述】:

我正在开发一个发布(构建和创建输出)C# 项目并执行其他工作的部署应用程序。

MSBuild 不方便。所以,我想创建自己的构建引擎。

我知道可以使用 C# 编译器将简单的 sample.cs 文件编译成 dll 文件。但是我可以完全不使用 MSBuild 编译项目吗?

【问题讨论】:

  • 是什么让 MSBuild “不方便”?我同意它本身并不是最好的工具,但我在 GUI 应用程序上取得了成功,该应用程序使用 MSBuild 和我们编写的一些其他脚本来完全自动化我们的部署过程,过去。

标签: c# msbuild


【解决方案1】:

是的,您可以一直使用csc(C# 编译器)来编译您的源代码。问题是您必须自己一切

由于 MSBuild 可以解释 slncsproj 文件,并了解要采取的各种操作、使用的参考以及在哪里可以找到它们,因此它比 csc 更容易使用。例如:有一些特定于 Office 加载项的任务。 MSBuild 知道如何从远程目标文件执行它们。你没有,所以如果你想使用这些,你需要自己做所有的动作。如果你想编译非常复杂的项目,这是可能的,只是有点困难。

use Roslyn to set up your compile statements and actually compile your code 可能会有所帮助。您仍然需要一种方法来指定所有参数。

【讨论】:

    【解决方案2】:

    正如this answer 中提到的,您可以使用其他构建引擎来查看它们是否符合您的需求。其中两个是 Microsoft.Build 和 Make for Windows

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2010-10-26
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多