【问题标题】:"Unable to find package Microsoft.NETCore.App.Host.osx-x64" after upgrading to .NET Core 3.0升级到 .NET Core 3.0 后“找不到包 Microsoft.NETCore.App.Host.osx-x64”
【发布时间】:2019-09-24 17:20:41
【问题描述】:

今天,.NET Core 3.0 was released。它在我的 Visual Studio for Mac 中作为更新提供,并决定将 ASP.NET Core 项目从 .NET Core 2.2.3 升级到 .NET Core 3.0。我认为这就像在项目选项中更改目标框架一样简单:

并更新 NuGet 包,但在尝试构建项目时出现以下错误:

找不到版本 (= 2.2.3) 的包 Microsoft.NETCore.App.Host.osx-x64

清理解决方案并重新启动 Visual Studio 没有帮助;还有其他地方我必须更改 .NET Core 版本吗?

【问题讨论】:

    标签: c# .net-core visual-studio-mac .net-core-3.0


    【解决方案1】:

    这不是默认设置的一部分,但在项目的生命周期中,我必须在 .csproj 文件中添加自定义 RuntimeFrameworkVersion 设置,以使特定的包/组件工作。该设置仍然指向版本 2.2.3。 AFAIK,没有选项可以在 Visual Studio 本身中更改此设置,但是如果您打开项目文件,您应该能够很容易地找到它,就在文件的顶部:

    <?xml version="1.0" encoding="utf-8"?>
    <Project Sdk="Microsoft.NET.Sdk.Web">
      <PropertyGroup>
        <TargetFramework>netcoreapp3.0</TargetFramework>
        <RuntimeFrameworkVersion>2.2.3</RuntimeFrameworkVersion>
        <PublishWithAspNetCoreTargetManifest>false</PublishWithAspNetCoreTargetManifest>
        <Version>1.1</Version>
      </PropertyGroup>
    

    完全删除第五行(如@MartinUllrich 在 cmets 中推荐的那样)或将其更改为

    <RuntimeFrameworkVersion>3.0.0</RuntimeFrameworkVersion>
    

    为我解决了问题。

    【讨论】:

    • 看看昨天的 .net 会议上关于将 .net 应用程序移植到 .net core 3.0 的演讲:youtube.com/watch?v=k7z4ZxFc8h8 展示了一些有用的工具...
    • 如果您不明确需要针对特定​​版本,我建议完全删除此行。如果您进行独立部署,可能会导致您错过重要的安全补丁。
    猜你喜欢
    • 2020-03-20
    • 1970-01-01
    • 2020-02-10
    • 1970-01-01
    • 1970-01-01
    • 2021-07-10
    • 2020-04-30
    • 1970-01-01
    • 2020-06-14
    相关资源
    最近更新 更多