You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Ubuntu命令行下升级C#项目的.NET Core版本并解决运行报错

解决方案:修复Ubuntu下C#项目.NET Core 2.2依赖缺失问题

报错信息如下:
应用程序依赖清单(*.deps.json)中指定的程序集未找到:
包:'runtime.linux-x64.Microsoft.NETCore.App',版本:'2.2.7'
路径:'runtimes/linux-x64/lib/netcoreapp2.2/Microsoft.CSharp.dll'

该报错核心原因是.NET Core 2.2已经停止官方支持,Ubuntu源中已经移除了相关runtime包,直接升级项目的.NET版本到长期支持(LTS)版本即可解决。

操作步骤

  • 第一步:查看当前系统已安装的.NET版本,确认要升级的目标版本
    执行命令:
    dotnet --list-sdks
    输出会列出所有已安装的SDK版本,优先选择带LTS标识的版本,比如.NET 6、.NET 8。如果没有安装对应LTS版本,以Ubuntu 22.04安装.NET 6为例,执行以下命令安装:
    sudo apt update && sudo apt install dotnet-sdk-6.0

  • 第二步:修改项目的目标框架配置
    找到项目根目录下后缀为.csproj的项目文件,找到<TargetFramework>节点,将原本的netcoreapp2.2修改为你安装的目标版本对应值:
    比如升级到.NET 6就改为<TargetFramework>net6.0</TargetFramework>,升级到.NET 8就改为<TargetFramework>net8.0</TargetFramework>。
    如果项目文件中显式引用了Microsoft.NETCore.App包,将该包的版本号也同步更新为对应SDK的版本号。

  • 第三步:清理旧依赖并重建项目
    在项目根目录依次执行以下命令:

    1. 清理旧的构建缓存和输出:dotnet clean
    2. 拉取新版本对应的所有依赖包:dotnet restore
    3. 重新构建项目:dotnet build
    4. 启动项目验证问题是否解决:dotnet run

如果执行dotnet restore时仍有个别包版本不兼容,对应升级不兼容的Nuget包版本即可。

内容的提问来源于stack exchange,提问作者Meriam Chelbi

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.26 12:36:02