【问题标题】:Publishing .NET Core C# self-contained application for linux architecture为 linux 架构发布 .NET Core C# 自包含应用程序
【发布时间】:2019-04-28 03:08:45
【问题描述】:

所以我正在尝试在 Google 云服务器上托管一个不和谐机器人。我有一个基础级机器人,可以在我的本地机器上工作和运行。 该机器人使用适用于 Windows 10 x64 的 C# .NET Core 框架编写。

在任何人说它以前已经解决之前,我已经找到了那些解决方案,但没有任何帮助。

我正在尝试将 .NET 应用程序发布为自包含的 linux 格式。这样我就可以在 linux 服务器上部署和运行机器人(Ubuntu 18.04-x64 [我在 .NET 网站上进行了交叉检查以确保它是一个可部署的包]) 我查找并找到了命令,以及我必须在 .vsproj 文件中进行的更改。

有人能帮我完成我遗漏的事情吗?我是否必须下载某些东西的 linux 版本才能为其构建......或其他什么。我不确定我错过了什么。然后,我知道如何将文件上传到我的服务器,但是我如何在服务器上“远程”执行部署的应用程序?

【问题讨论】:

  • 发布 文本 而不是屏幕截图。无论如何,LTS 版本都是 2.1,因此您应该将 netcoreapp2.0 更改为 netcoreapp2.1。该屏幕截图中使用的包版本针对 2.2,目前处于预览版 3 中。所有这些都很重要,因为 a)无论如何您都必须以 2.1 为目标,b)在 2.1 上修复了很多问题,在 2.2 上修复了更多问题
  • 该过程在Deploying apps with CLI tools 中进行了描述,尽管抱怨 RID 不正确。我怀疑 2.0 构建工具不包含该 RID。尝试使用支持的核心版本发​​布
  • 好的,谢谢。我会试试的。
  • 所以我尝试将其更改为 netcoreapp2.1,它甚至无法从 Visual Studio 运行。当我尝试控制台发布时,我收到此错误: C:\Program Files\dotnet\sdk\2.1.100\Sdks\Microsoft.NET.Sdk\build\Microsoft.NET.TargetFrameworkInference.targets(135,5): error :当前的 .NET SDK 不支持面向 .NET Core 2.1。以 .NET Core 2.0 或更低版本为目标,或者使用支持 .NET Core 2.1 的 .NET SDK 版本。 [D:\Github\Bots\Chill_Bot\Chill_Bot.csproj]
  • @JackMcCall 因为错误显示or use a version of the .NET SDK that supports .NET Core 2.1。安装 SDK。如果 Visual Studio 本身还没有包含 .NET 2.1,您可能需要升级它。最新升级为 15.9.2

标签: c# .net linux windows .net-core


【解决方案1】:

感谢评论的人。将我的 .NET Core 框架更新到 2.1.500,嘿嘿!已成功发布应用程序。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2021-11-06
    • 1970-01-01
    • 1970-01-01
    • 2020-09-10
    • 2018-07-30
    • 1970-01-01
    • 1970-01-01
    • 2021-07-19
    相关资源
    最近更新 更多