我正在学习如何将.NET Core应用程序部署到多个平台,并且无法为Mac OS生成.dmg
可执行文件。
这是我的开发环境:
为了测试部署过程,我创建了一个简单的“ hello world” .NET Core Console App。我按照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
可执行文件?
谢谢。
答案 0 :(得分:1)
。dmg不是可执行文件,而是磁盘映像(如Gordon所写,类似.iso)。它可以用于分发软件,而且我不希望您的工具输出.dmg(Apple自己的开发工具也不会)。
在这种情况下,“自包含部署”程序包意味着.NET运行时静态链接到可执行文件中,因此最终用户不需要安装.NET运行时(以增加二进制文件大小为代价)。参见self-contained. NET core applications。
您的构建应生成一个MACH二进制文件(可能与您的项目同名,没有任何扩展名)。您可以根据需要分发此二进制文件,包括使用.dmg。您可以使用hdiutil创建和处理Apple磁盘映像。