【问题标题】:A fatal error occurred. The folder [/usr/share/dotnet/host/fxr] does not exist发生致命错误。文件夹 [/usr/share/dotnet/host/fxr] 不存在
【发布时间】:2022-09-30 01:09:09
【问题描述】:

Ubuntu 22.04 点网--信息 更新后无法访问 dotnet。 重新安装 dotnet 和 vscode 没有帮助

enter image description here

  • 您是否使用apt 安装了 dotnet?您的路径中是否可能有多个 dotnet 实例?

标签: .net ubuntu host


【解决方案1】:

试试这个解决方案https://github.com/dotnet/sdk/issues/27082#issuecomment-1211143446 对我来说它解决了这个问题

【讨论】:

    【解决方案2】:

    我建议不要遵循已接受的答案,因为这是基于特定软件包版本的临时解决方法,这将导致您错过未来的更新。

    当 .NET (Core) 首次发布时,它还没有在 Ubuntu 官方 repo 中提供,因此人们添加了 Microsoft APT repo 来安装它。

    现在,这些包是 Ubuntu 存储库的一部分,它们与 Microsoft 包冲突。此错误是混合包的结果。

    因此,您需要选择要使用的那个,并确保它们不会混在一起。就个人而言,我决定坚持使用 Microsoft 软件包。

    首先,删除所有现有包以达到干净状态:

    sudo apt remove dotnet*
    sudo apt remove aspnetcore*
    

    然后,在/etc/apt/preferences.d(我的命名为99microsoft-dotnet)中创建一个文件,内容如下:

    Package: *
    Pin: origin "packages.microsoft.com"
    Pin-Priority: 1001
    

    然后,定期更新和安装:

    sudo apt update
    sudo apt install dotnet-sdk-6.0
    

    如果您更愿意使用官方的 Ubuntu 软件包,请执行与上述相同的操作,但不要创建 /etc/apt/preferences.d 条目,只需删除 Microsoft 存储库:

    sudo rm /etc/apt/sources.list.d/microsoft-prod.list
    

    但是,请注意,Microsoft 存储库包含其他包,例如 PowerShell、SQL Server 命令行工具等,因此可能不希望将其删除。

    此处提供有关此问题和各种解决方案的更多信息:https://github.com/dotnet/core/issues/7699

    【讨论】:

      猜你喜欢
      • 2023-01-19
      • 1970-01-01
      • 1970-01-01
      • 2018-04-27
      • 2014-03-05
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-02-07
      相关资源
      最近更新 更多