【问题标题】:The "ResolvePackageAssets" task failed unexpectedly - System.TypeLoadException“ResolvePackageAssets”任务意外失败 - System.TypeLoadException
【发布时间】:2022-03-08 02:53:28
【问题描述】:

我正在尝试在 macos (10.14.3) 上设置 Visual Studio 2019,但是在尝试构建默认 Web MVC 项目时出现此依赖错误:

    Target _CheckForNETCoreSdkIsPreview:
    /usr/local/share/dotnet/sdk/3.0.100-preview3-010431/Sdks/Microsoft.NET.Sdk/targets/Microsoft.NET.RuntimeIdentifierInference.targets(151,5): message NETSDK1057: You are using a preview version of .NET Core. See: https://aka.ms/dotnet-core-preview
Target ResolvePackageAssets:
    /usr/local/share/dotnet/sdk/3.0.100-preview3-010431/Sdks/Microsoft.NET.Sdk/targets/Microsoft.PackageDependencyResolution.targets(228,5): error MSB4018: The "ResolvePackageAssets" task failed unexpectedly.
    /usr/local/share/dotnet/sdk/3.0.100-preview3-010431/Sdks/Microsoft.NET.Sdk/targets/Microsoft.PackageDependencyResolution.targets(228,5): error MSB4018: System.TypeLoadException: Could not resolve type with token 0100003f from typeref (expected class 'NuGet.Packaging.Core.PackageDependency' in assembly 'NuGet.Packaging, Version=5.0.0.4, Culture=neutral, PublicKeyToken=31bf3856ad364e35')
    /usr/local/share/dotnet/sdk/3.0.100-preview3-010431/Sdks/Microsoft.NET.Sdk/targets/Microsoft.PackageDependencyResolution.targets(228,5): error MSB4018:   at Microsoft.NET.Build.Tasks.ResolvePackageAssets+CacheWriter.GetPlatformPackageExclusions () [0x000d7] in <9524e6fbf1724027a475d15b01fab866>:0 
    /usr/local/share/dotnet/sdk/3.0.100-preview3-010431/Sdks/Microsoft.NET.Sdk/targets/Microsoft.PackageDependencyResolution.targets(228,5): error MSB4018:   at Microsoft.NET.Build.Tasks.ResolvePackageAssets+CacheWriter..ctor (Microsoft.NET.Build.Tasks.ResolvePackageAssets task, System.IO.Stream stream) [0x0009b] in <9524e6fbf1724027a475d15b01fab866>:0 
    /usr/local/share/dotnet/sdk/3.0.100-preview3-010431/Sdks/Microsoft.NET.Sdk/targets/Microsoft.PackageDependencyResolution.targets(228,5): error MSB4018:   at Microsoft.NET.Build.Tasks.ResolvePackageAssets+CacheReader.CreateReaderFromDisk (Microsoft.NET.Build.Tasks.ResolvePackageAssets task, System.Byte[] settingsHash) [0x0003a] in <9524e6fbf1724027a475d15b01fab866>:0 
    /usr/local/share/dotnet/sdk/3.0.100-preview3-010431/Sdks/Microsoft.NET.Sdk/targets/Microsoft.PackageDependencyResolution.targets(228,5): error MSB4018:   at Microsoft.NET.Build.Tasks.ResolvePackageAssets+CacheReader..ctor (Microsoft.NET.Build.Tasks.ResolvePackageAssets task) [0x00015] in <9524e6fbf1724027a475d15b01fab866>:0 
    /usr/local/share/dotnet/sdk/3.0.100-preview3-010431/Sdks/Microsoft.NET.Sdk/targets/Microsoft.PackageDependencyResolution.targets(228,5): error MSB4018:   at Microsoft.NET.Build.Tasks.ResolvePackageAssets.ReadItemGroups () [0x00000] in <9524e6fbf1724027a475d15b01fab866>:0 
    /usr/local/share/dotnet/sdk/3.0.100-preview3-010431/Sdks/Microsoft.NET.Sdk/targets/Microsoft.PackageDependencyResolution.targets(228,5): error MSB4018:   at Microsoft.NET.Build.Tasks.ResolvePackageAssets.ExecuteCore () [0x00018] in <9524e6fbf1724027a475d15b01fab866>:0 
    /usr/local/share/dotnet/sdk/3.0.100-preview3-010431/Sdks/Microsoft.NET.Sdk/targets/Microsoft.PackageDependencyResolution.targets(228,5): error MSB4018:   at Microsoft.NET.Build.Tasks.TaskBase.Execute () [0x00000] in <9524e6fbf1724027a475d15b01fab866>:0 
    /usr/local/share/dotnet/sdk/3.0.100-preview3-010431/Sdks/Microsoft.NET.Sdk/targets/Microsoft.PackageDependencyResolution.targets(228,5): error MSB4018:   at Microsoft.Build.BackEnd.TaskExecutionHost.Microsoft.Build.BackEnd.ITaskExecutionHost.Execute () [0x00023] in /Users/builder/jenkins/workspace/build-package-osx-mono/2018-10/external/bockbuild/builds/msbuild-15/src/Build/BackEnd/TaskExecutionHost/TaskExecutionHost.cs:573 
    /usr/local/share/dotnet/sdk/3.0.100-preview3-010431/Sdks/Microsoft.NET.Sdk/targets/Microsoft.PackageDependencyResolution.targets(228,5): error MSB4018:   at Microsoft.Build.BackEnd.TaskBuilder.ExecuteInstantiatedTask (Microsoft.Build.BackEnd.ITaskExecutionHost taskExecutionHost, Microsoft.Build.BackEnd.Logging.TaskLoggingContext taskLoggingContext, Microsoft.Build.BackEnd.TaskHost taskHost, Microsoft.Build.BackEnd.ItemBucket bucket, Microsoft.Build.BackEnd.TaskExecutionMode howToExecuteTask) [0x00212] in /Users/builder/jenkins/workspace/build-package-osx-mono/2018-10/external/bockbuild/builds/msbuild-15/src/Build/BackEnd/Components/RequestBuilder/TaskBuilder.cs:784 
Done building target "ResolvePackageAssets" in project "TestingApp.csproj" -- FAILED.

Done building project "TestingApp.csproj" -- FAILED.

Build FAILED.

我还尝试使用dotnet run 从终端运行它,它可以工作,但我无法使用 Visual Studio。谢谢。

【问题讨论】:

  • 我收到此错误,直到我在以下位置创建了一个空文件夹:c:\microsoft\xamarin\nuget

标签: macos visual-studio


【解决方案1】:

只需从项目中删除 BIN 和 OBJ 目录并重新构建。

【讨论】:

  • 在我的情况下,构建 Docker 映像时发生错误。将以下内容添加到 .dockerignore 有帮助:**/bin **/obj bin/ obj/
【解决方案2】:

从命令行尝试:

  • dotnet 清理
  • dotnet 构建

它对我有用。查看here了解更多信息

【讨论】:

  • 感谢您的回答。不幸的是,它没有用。 VS 中仍然存在错误,我无法使用 VS 构建项目。
  • 我这样做了,但遇到了很多错误,但做了几次,然后从 VS 构建项目并且它工作。我用的是VS命令行。
  • 我认为这对我有用,因为它让我意识到我有一个应用程序正在运行,所以停止了那个(并删除了所有相同的二进制文件)。所以我不确定这是否真的是问题所在,但它还是有帮助的。
【解决方案3】:

根本原因:-

此错误是由于项目(共享项目、iOS 项目、Android 项目)中 Nuget 包版本兼容性不同。

解决方案:-

1.更新每个Nuget包,在nuget包前面显示更新版本。

2.清洁溶液。

3.构建解决方案,

【讨论】:

    【解决方案4】:

    就我而言。转到 C:\Program Files(x86)\Microsoft Visual Studio\Shared 然后创建一个新文件夹,名称为“NugetPackages”

    再次构建并运行程序,问题已解决。

    【讨论】:

      【解决方案5】:

      刚刚遇到同样的问题。 原因是,在主项目 Build-General 的项目选项中,目标框架发生了变化,不知道为什么。 对于我的项目,它应该是 Xamarin.Mac Full Net 4.7.2,但无论出于何种原因,它现在都是 Xamarin.Mac Modern。 改回Full,一切又好了。

      我记得,在 VS Mac 的另一次更新之后,它已经再次发生了。 作为 Xamarin 多年的用户,我知道,许多 Xamarin-Updates 都在破坏之前很好的东西。

      【讨论】:

        【解决方案6】:

        在您的项目/lib 上尝试以下步骤:

        1. 如果您正在使用多个目录结构,则对其应用全部权限
        2. 如果您使用的是旧版本的 NuGet,请使用最新或兼容版本更新它们
        3. 如果仍然无法正常工作,请删除 bin 文件夹并再次执行第 1 步和第 2 步。

        它对我有用。

        【讨论】:

          【解决方案7】:

          以提升的权限打开 Visual Studio(以管理员身份运行) 然后尝试清理并重建。

          【讨论】:

            【解决方案8】:

            我发现(在使用 .Net6 的 VS2022 下)我所要做的就是创建 一个空文件夹:

            C:\Program Files (x86)\ComponentOne\Winforms Edition\bin\v5

            然后通过 VS2022 菜单中的“Build/Rebuild”进行项目重建。

            【讨论】:

              【解决方案9】:

              在我的情况下,以提升的权限运行 Visual Studio 是解决方案。

              【讨论】:

                【解决方案10】:

                对我来说,这里的解决方案都不起作用,但 Visual Studio 软件更新完成了工作。

                当 Mono 的 MSBuild(Visual Studio 用于构建项目)不支持您正在使用的 SDK 版本时,通常会发生这种情况,这可能会生成许多(例如)为.NET 5 并要求 Nuget 5 Packaging 无法使用 MSBuild 构建。

                您通常会遇到以下错误之一:

                • Microsoft.NET.Sdk.targets(124, 5): [MSB4018] The "PACKAGE_NAME" task failed unexpectedly.
                • Microsoft.PackageDependencyResolution.targets(234, 5): [MSB4018] The "ResolvePackageAssets" task failed unexpectedly.

                所以安装或更改为兼容的MSBuild,或更改SDK 通常应该可以解决问题。

                您可以在这里找到更多有用的信息:

                【讨论】:

                  【解决方案11】:

                  只需重建项目。它会自动清理和恢复所需的文件,然后构建项目

                  【讨论】:

                    猜你喜欢
                    • 2023-01-03
                    • 1970-01-01
                    • 2020-08-19
                    • 2021-12-04
                    • 2018-01-02
                    • 2017-09-20
                    • 2013-05-25
                    • 2017-07-23
                    • 2016-06-22
                    相关资源
                    最近更新 更多