gpt4 book ai didi

.net-core - 在 Ubuntu 中独立部署 .NET Core 应用程序

转载 作者:行者123 更新时间:2023-12-01 01:14:46 28 4
gpt4 key购买 nike

我使用 .NET Core 编写了一个测试项目,并按照所述为 Ubuntu 16.04 组装了自包含部署 here (请参阅没有第三方依赖项的自包含部署)。

但是当我运行该应用程序时,出现以下错误:

An assembly specified in the application dependencies manifest (Test.deps.json) was not found:

package: 'runtime.linux-x64.Microsoft.NETCore.App', version: '2.0.0-preview2-25407-01'

path: 'runtimes/linux-x64/lib/netcoreapp2.0/Microsoft.CSharp.dll'

我正在使用 .NET Core 2.0 预览版 2、VS2017 预览版。

如有任何帮助,我将不胜感激!

最佳答案

这是一个老问题,但当我尝试在 Linux 上运行 .Net Core 应用程序并想分享解决方案时,我刚遇到这个问题。如果您收到上述错误,您可能尝试执行错误的二进制文件。对于那些从头开始跟进的人,请按照以下步骤操作:

  • 在 Windows 上,在您要在 Linux 上运行的项目目录中打开命令提示符。
  • 使用 dotnet publish -r linux-x64 为 Linux 构建项目
    • 我选择以 linux-x64 为目标,但如果您愿意,您可以以特定的运行时为目标。可以找到运行时标识符 here .
  • 将发布的文件复制到 Linux 工作站。因为上面的命令省略了配置标志-c,配置默认为debug。发布的文件将在 Debug\netcoreapp2.0\linux-x64\publish
    • 注意:Debug\netcoreapp2.0\linux-x64\ 中也会有二进制文件。这些不是您要复制到 Linux 工作站的二进制文件。如果您运行这些二进制文件,您将收到 OP 中描述的错误。而是复制 publish 目录中的所有文件。忽略 linux-x64 中可能存在的任何文件。
  • 在 Linux 工作站上,授予二进制文件执行权限。我的项目名为 ConsoleUI,所以我使用了 chmod 764 ConsoleUI
  • 使用 ./ConsoleUI 执行二进制文件>

请记住,您至少需要在 Linux 工作站上安装 .Net Core 运行时。

关于.net-core - 在 Ubuntu 中独立部署 .NET Core 应用程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45272458/

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