当前的.NET SDK不支持以.NET Standard 2.0为目标

问题描述 投票:1回答:2

我昨晚将Visual Studio版本升级到15.5.2。现在我不能再运行Xamarin.Forms跨平台应用程序了。他们之前工作正常,没有任何错误。

当我创建项目时,.NET可移植类库的选项不再可用,并且已替换为.NET标准库选项。

enter image description here

enter image description here

但是,visual studio创建的模板项目不起作用。它给了我所有这些错误。我不知道该怎么做才能解决这个问题,我尝试根据这个答案安装最新的.NET Core SDK

https://stackoverflow.com/a/45737766

但它没有效果。

1.

严重级代码说明项目文件行抑制状态错误当前的.NET SDK不支持以.NET Standard 2.0为目标。要么是.NET Standard 1.6或更低版本,要么使用支持.NET Standard 2.0的.NET SDK版本。 Phoneword C:\ Program Files(x86)\ Microsoft Visual Studio \ 2017 \ Community \ MSBuild \ Sdks \ Microsoft.NET.Sdk \ build \ Microsoft.NET.TargetFrameworkInference.targets 126

2.

严重级代码说明项目文件行抑制状态错误“ResolveLibraryProjectImports”任务意外失败。 System.IO.FileNotFoundException:无法加载程序集'Phoneword,Version = 0.0.0.0,Culture = neutral,PublicKeyToken ='。也许它在Mono for Android配置文件中不存在?文件名称:'Phoneword.dll' at Java.Interop.Tools.Cecil.DirectoryAssemblyResolver.Resolve(AssemblyNameReference reference,ReaderParameters parameters)at Java.Interop.Tools.Cecil.DirectoryAssemblyResolver.Resolve(String fullName)at Xamarin.Android.Tasks.ResolveLibraryProjectImports.Extract(DirectoryAssemblyResolver res,ICollection1 jars, ICollection1在Microsoft.Build.BackEnd.TaskBuilder.d__26.MoveNext的Microsoft.Build.BackEnd.TaskExecutionHost.Microsoft.Build.BackEnd.ITaskExecutionHost.Execute()中的Xamarin.Android.Tasks.ResolveLibraryProjectImports.Execute()处于已解决的资源目录,ICollection1 resolvedAssetDirectories, ICollection1已解决的环境中。 )Phoneword.Android

.

编辑:从Android SDK管理器安装Android 8 SDK后,以下4个错误(3 - 7)消失,然后在“使用Adnroid版本编译”选项中选择它

enter image description here

3.

错误NU1202包Xamarin.Android.Support.v4 25.4.0.2与monoandroid60(MonoAndroid,Version = v6.0)不兼容。包Xamarin.Android.Support.v4 25.4.0.2支持:monoandroid70(MonoAndroid,Version = v7.0)

4.

错误NU1202包Xamarin.Android.Support.v7.CardView 25.4.0.2与monoandroid60不兼容(MonoAndroid,Version = v6.0)。包Xamarin.Android.Support.v7.CardView 25.4.0.2支持:monoandroid70(MonoAndroid,Version = v7.0)

5.

错误NU1202包Xamarin.Android.Support.v7.AppCompat 25.4.0.2与monoandroid60(MonoAndroid,Version = v6.0)不兼容。包Xamarin.Android.Support.v7.AppCompat 25.4.0.2支持:monoandroid70(MonoAndroid,Version = v7.0)

6.

错误NU1202包Xamarin.Android.Support.v7.MediaRouter 25.4.0.2与monoandroid60(MonoAndroid,Version = v6.0)不兼容。包Xamarin.Android.Support.v7.MediaRouter 25.4.0.2支持:monoandroid70(MonoAndroid,Version = v7.0)

7.

错误NU1202包Xamarin.Android.Support.Design 25.4.0.2与monoandroid60(MonoAndroid,Version = v6.0)不兼容。包Xamarin.Android.Support.Design 25.4.0.2支持:monoandroid70(MonoAndroid,Version = v7.0)

.net visual-studio xamarin xamarin.forms
2个回答
2
投票

我注意到共享项目设置中的目标框架是空白的,可能针对.NET标准库2.0,我认为这与该项目类型不兼容。

enter image description here

enter image description here

我选择了1.6版本,在我这样做之后,依赖关系中的黄色警告符号消失了,并且.NET标准库SDK出现了新的依赖关系

enter image description here


1
投票

尝试在Android项目 - >属性 - >应用程序下将“使用Android版本编译”更改为7.0或8.0。

© www.soinside.com 2019 - 2024. All rights reserved.