无法在Mac中运行.Net Core自包含应用程序(权限被拒绝)

时间:2019-06-27 02:17:12

标签: c# .net-core macos-sierra

我需要在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的身份执行我的应用程序。但是我收到一条错误消息,提示拒绝权限

enter image description here


P.S。

我知道我可以在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为您的评论提供解决方案。

0 个答案:

没有答案