我需要在Mac中运行一个自包含的.net核心应用程序。我能够在Linux和Windows中做到这一点。我只是想在Mac中运行此应用程序。也许我做错了。这就是我正在做的:
1)创建一个hello world应用程序目标.Net Core 2.1
using System;
namespace ConsoleApp4
{
class Program
{
static void Main(string[] args)
{
Console.WriteLine("Hello World!");
}
}
}
2)为Mac osx.10.12-x64
发布该应用程序。在命令提示符下,我运行以下命令:
dotnet publish "C:\Users\Foooooo\ConsoleApp4.csproj" --self-contained --runtime osx.10.12-x64
3)然后,我将该输出放置在mac中,并使用以下命令在终端中切换到root用户:
sudo -i
4)然后,我尝试以./ConsoleApp4
的身份执行我的应用程序。但是我收到一条错误消息,提示拒绝权限。
我知道我可以在Mac上安装dotnet core,然后以dotnet ./ConsoleApp4
的身份运行我的可执行文件。 我不想在Mac上安装dotnet core,我想利用--self-contained
功能。在发布到Windows(--runtime win7-x64
)和linux(--runtime linux-x64
)中时,这非常有用。我只是想在Mac上运行此应用程序。 如果我是终端用户,为什么会出现拒绝权限错误?
对不起,我不是一个Mac / Linux专家,我忘记对文件执行chmod +x
。当我搜索权限时,如果找到命令sudo -i
。感谢@chue为您的评论提供解决方案。