发布一个可执行文件

man*_*ers 3 c# .net-core .net-core-1.1

是否有可能将.NET Core Console应用程序作为单个文件发布(无论是EXE还是DLL)?

我正在使用.NET Core 1.1,但我有弹性将我的项目移植到另一个版本.

Mar*_*ich 7

目前,这是不可能的,因为:

  • 便携式应用程序仍然至少需要runtimeconfig.json告诉主机(dotnet/ dotnet.exe)使用哪个共享运行时.即使您将所有托管代码IL-Merge合并到一个dll中,仍然需要此文件.主机还期望deps.json表达应用程序的依赖性.
  • 自包含应用程序依赖于构建一个.dll+ .deps.json并从特定于运行时的NuGet包中复制内容.这还包括按文件名搜索的本机库.

CoreRT项目旨在编译使用名列前茅的即时编译一个.NET的核心应用到一个单一的本机二进制,但仍处于开发阶段.