gpt4 book ai didi

c# - 在 Ubuntu 20.04 上运行 dotnet 应用程序

转载 作者:行者123 更新时间:2023-12-04 18:48:45 31 4
gpt4 key购买 nike

我是 Linux 网络核心的新手,我有一个问题。我安装了 .net core 5 并编写了名为“hello”的 hello world 应用程序。之后,我转到项目 bin 目录并运行我的应用程序,如下所示:

dotnet hello.dll
一切都好。但我也在 bin 目录中看到“hello”(共享库)文件。我可以在终端中运行它,例如:
./hello
所有作品...
但是当我将文件复制到另一个位置(远离项目目录)时,我无法像这样运行我的应用程序:./hello
我在终端中收到消息“段错误(核心转储)”。
请有人告诉我,为什么在复制文件后,命令“./hello”不起作用(但 dotnet hello.dll 起作用)。
Ubuntu 20.04
.NET SDK 安装:5.0.301
.NET 运行时安装:5.0.7
更新
项目地点:
/RiderProjects/RabbitMq-example/RabbitMq-example/bin/Debug/net5.0
我只将 net5.0 文件夹复制到:
/RiderProjects/RMQ/net5.0
我得到段错误。
如果我复制完整的 bin 文件夹(如:
/RiderProjects/RMQ/bin/Debug/net5.0
一切都好。
步骤:
  • 创建文件夹(例如 HelloApp)
  • 在文件夹中,打开终端并使用 dotnet 新控制台
  • 创建项目后,使用 dotnet 发布 在此文件夹中(构建操作后将创建 bin 文件夹)
    (按当前步骤,我有 RiderProjects/HelloApp/bin/Debug/net5.0/publish)
  • 将 publish/文件夹(带有文件)复制到另一个位置(在我的情况下,它是
    RiderProjects/发布)
  • dotnet HelloApp.dll 在发布文件夹中工作正常,但是 ./HelloApp 不起作用
  • 最佳答案

    如果您通过 snap install 安装了 dotnet 运行时,则只能通过“sudo dotnet ...”访问它。我在 VS Code 中遇到了同样的问题,它在没有 sudo 的情况下运行 dotnet 命令,并且我收到了“段错误(核心转储)”错误。我通过 apt-get 安装 dotnet 运行时解决了(现在安装在“/usr/bin ...”中,并且无需 sudo 即可工作(参见:https://docs.microsoft.com/en-us/dotnet/core/install/linux-ubuntu#2004-))

    关于c# - 在 Ubuntu 20.04 上运行 dotnet 应用程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/68154940/

    31 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com