无法使用.NET Core 2.1为Mac OS创建dmg可执行文件

问题描述 投票:0回答:1

我正在学习如何将.NET Core应用程序部署到多个平台,我无法为Mac OS生成.dmg可执行文件。

这是我的开发环境:

  • Windows 10 Professional 64位
  • Visual Studio 2017 Professional,带有最新更新
  • 针对.NET Core 2.1

为了测试部署过程,我创建了一个简单的“hello world”.NET Core Console应用程序。我按照steps on the official MSDN website将应用程序部署到Visual Studio中的Mac OS作为自包含部署包,但我没有在发布的目标目录中看到.dmg文件。我只看到.dll文件和其他项目相关的文件。我还试图通过发布以下命令通过.NET Core CLI将其作为自包含部署包发布到Mac OS,但仍然没有生成.dmg可执行文件:

dotnet publish -c Release --self-contained -r osx-x64

我也尝试过:

dotnet publish -c Release --self-contained -r osx.10.13-x64

如何创建.dmg可执行文件?

谢谢。

macos deployment dmg .net-core-2.1
1个回答
1
投票

.dmg不是可执行文件,它是一个磁盘映像(正如Gordon写的那样,类似于.iso)。它可以用于分发软件,我不希望你的工具输出.dmg(也不是Apple自己的开发工具)。

在这种情况下,“自包含部署”包意味着.NET运行时在可执行文件中静态链接,因此最终用户不需要安装.NET运行时(以增加二进制文件的大小为代价)。见self-contained. NET core applications

您的构建应该生成一个MACH二进制文件(可能与您的项目同名,没有任何扩展名)。您可以按照自己喜欢的方式分发此二进制文件,包括使用.dmg。您可以使用hdiutil来创建和操作Apple磁盘映像。

© www.soinside.com 2019 - 2024. All rights reserved.