.NET 5 虽然已安装但在 MacOS (Monterey) 中找不到

Posted

技术标签:

【中文标题】.NET 5 虽然已安装但在 MacOS (Monterey) 中找不到【英文标题】:.NET 5 not found in MacOS (Monterey) though it is installed 【发布时间】:2022-01-22 22:52:35 【问题描述】:

我正在尝试在运行 Monterey 12.1 的 MacOS 机器上运行我在 .NET 5(另一台机器上)上创建的项目,但出现此错误:

It was not possible to find any compatible framework version
The framework 'Microsoft.AspNetCore.App', version '5.0.0' (arm64) was not found.
  - The following frameworks were found:
      3.1.20 at [/usr/local/share/dotnet/shared/Microsoft.AspNetCore.App]
      6.0.1 at [/usr/local/share/dotnet/shared/Microsoft.AspNetCore.App]

我觉得这很奇怪,因为我记得以前安装过它,但又继续安装(SDK 5.0.404)。并得到了同样的错误。 然后运行dotnet --list-runtimes,得到如下输出:

Microsoft.AspNetCore.App 3.1.20 [/usr/local/share/dotnet/shared/Microsoft.AspNetCore.App]
Microsoft.AspNetCore.App 6.0.1 [/usr/local/share/dotnet/shared/Microsoft.AspNetCore.App]
Microsoft.NETCore.App 3.1.20 [/usr/local/share/dotnet/shared/Microsoft.NETCore.App]
Microsoft.NETCore.App 6.0.1 [/usr/local/share/dotnet/shared/Microsoft.NETCore.App]

我完全迷路了。似乎即使我正在安装整个 SDK 包,后来也尝试了运行时安装,但我的机器拒绝将其视为已安装。

【问题讨论】:

不久前我在 MacOS 中遇到了类似的问题,当时我有两个单独的 dotnet 安装。其中只有一个在 PATH 中。我是通过直接从 Microsoft 站点下载安装的,另一个是通过 brew 下载的。尝试从终端运行“which dotnet”,它会显示安装在 PATH 中的位置。 我刚刚看到问题是可从 Microsoft 网站下载的 SDK 是 x64,而对于我的 M1 Mac,我需要 ARM64。知道在哪里可以找到 .Net 5 的 ARM64 安装程序吗?好像没找到 (供参考,下载站点。dotnet.microsoft.com/en-us/download/dotnet/5.0MacOS 列出了 x64,但没有列出 ARM64。)我使用的 Mac 有 x64。我记得读过一些关于 MacOS 上 ARM64 的兼容性问题的文章,但我不确定是否是这个原因。 感谢@MerkleGroot 【参考方案1】:

问题似乎是 .NET5 for Mac 的唯一可用版本是 x64,并且该版本没有 ARM64 版本。 ARM64 for Mac 仅从 .NET6 开始完全支持

【讨论】:

以上是关于.NET 5 虽然已安装但在 MacOS (Monterey) 中找不到的主要内容,如果未能解决你的问题,请参考以下文章

如何在 macOS 上安装 Tizen 4/5 模拟器?

Pyqt5 已安装,但在导入时出现 dll 加载失败错误?

Xcode Swift 5 MacOs 应用程序存档时为空窗口,但在从 Xcode 运行时有效

MacOS下搭建开发环境React Native 目标平台ios

黑苹果提示:安装 macOS xxxx应用程序副本已损坏 ?

解决MacOS安装应用时提示“应用程序副本已损坏”问题