我有一个非常简单的 .net Core (2.1) 控制台应用程序,它使用几个 NuGet 包进行开发。当我编译(不是独立的)时,它的输出如下:
HelloWorld.deps.json
HelloWorld.dll
HelloWorld.pdb
HelloWorld.runtimeconfig.dev.json
HelloWorld.runtimeconfig.json
注意:为了简单起见,我已将应用输出重命名为 HelloWorld
如果我使用以下命令运行控制台应用程序:
dotnet HelloWorld.dll
我得到以下输出:
Error: An assembly specified in the application dependencies manifest (HelloWorld.deps.json) was not found: package: 'Microsoft.Azure.Amqp', version: '2.3.0' path: 'lib/netstandard1.3/Microsoft.Azure.Amqp.dll'
我知道它缺少在开发过程中通过 NuGet 引用的程序集之一。由于这不是一个独立的应用程序,并且需要在其运行的机器上安装 .net Core Runtime 或 SDK,我如何确保其他所需的 dll 存在?我原以为任何非 dotnet 核心 dll 都会出现在编译输出中,但它们并没有出现。
提前感谢您的指点! (我刚开始在 Ubuntu 上运行 .net Core)
最佳答案
我很快意识到我做了什么!我已经复制了我项目的/bin/目录的输出并尝试运行它。我实际上应该做的是复制“发布”的输出,其中包括应用程序所需的一切!呸! :)
关于c# - 如何在 Ubuntu 上运行依赖于 NuGet 包的 .net Core 应用程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51926458/