Java Visual Studio for Mac 2019:更新后无法在Android上构建和部署
我在Mac上工作,刚刚将Visual Studio for Mac 20109更新为最新版本:版本8.8(build 2913) 在这之后,我再也无法构建/部署我所使用的Android应用程序了 我创建了一个空的新Xamarin.Forms项目,但我遇到了同样的问题 输出为:Java Visual Studio for Mac 2019:更新后无法在Android上构建和部署,java,android,xamarin,visual-studio-2019,visual-studio-mac,Java,Android,Xamarin,Visual Studio 2019,Visual Studio Mac,我在Mac上工作,刚刚将Visual Studio for Mac 20109更新为最新版本:版本8.8(build 2913) 在这之后,我再也无法构建/部署我所使用的Android应用程序了 我创建了一个空的新Xamarin.Forms项目,但我遇到了同样的问题 输出为: zipalign /Users/pacodoso/Library/Developer/Xamarin/android-sdk-macosx/build-tools/30.0.0/zipalign exited wi
zipalign
/Users/pacodoso/Library/Developer/Xamarin/android-sdk-macosx/build-tools/30.0.0/zipalign exited with value: 0
Creating: /var/folders/yv/7m_37_p15g1bymlxqxmcgv3r0000gn/T/2medl58y.mxk/Mono.Android.Platform.ApiLevel_28.apk
Executing: /Users/pacodoso/Library/Developer/Xamarin/jdk/microsoft_dist_openjdk_8.0.25/bin/java -jar "/Users/pacodoso/Library/Developer/Xamarin/android-sdk-macosx/build-tools/30.0.0/lib/apksigner.jar" sign --ks "/Users/pacodoso/.local/share/Xamarin/Mono for Android/debug.keystore" --ks-key-alias "androiddebugkey" --out "/var/folders/yv/7m_37_p15g1bymlxqxmcgv3r0000gn/T/2medl58y.mxk/Mono.Android.Platform.ApiLevel_28.apk" --ks-pass "pass:android" --key-pass "pass:android" "/var/folders/yv/7m_37_p15g1bymlxqxmcgv3r0000gn/T/2medl58y.mxk/unsigned.apk"
/Users/pacodoso/Library/Developer/Xamarin/android-sdk-macosx/build-tools/30.0.0/zipalign exited with value: 0
Creating: /var/folders/yv/7m_37_p15g1bymlxqxmcgv3r0000gn/T/2medl58y.mxk/Mono.Android.Platform.ApiLevel_28.apk
Executing: /Users/pacodoso/Library/Developer/Xamarin/jdk/microsoft_dist_openjdk_8.0.25/bin/java -jar "/Users/pacodoso/Library/Developer/Xamarin/android-sdk-macosx/build-tools/30.0.0/lib/apksigner.jar" sign --ks "/Users/pacodoso/.local/share/Xamarin/Mono for Android/debug.keystore" --ks-key-alias "androiddebugkey" --out "/var/folders/yv/7m_37_p15g1bymlxqxmcgv3r0000gn/T/2medl58y.mxk/Mono.Android.Platform.ApiLevel_28.apk" --ks-pass "pass:android" --key-pass "pass:android" "/var/folders/yv/7m_37_p15g1bymlxqxmcgv3r0000gn/T/2medl58y.mxk/unsigned.apk"
Removing temporary directory: /var/folders/yv/7m_37_p15g1bymlxqxmcgv3r0000gn/T/2medl58y.mxk
/Library/Frameworks/Mono.framework/External/xbuild/Xamarin/Android/Xamarin.Android.Common.Debugging.targets(579,2): error ADB1000: Deployment failed
/Library/Frameworks/Mono.framework/External/xbuild/Xamarin/Android/Xamarin.Android.Common.Debugging.targets(579,2): error ADB1000: Xamarin.AndroidTools.AndroidSdkToolException: Error: A JNI error has occurred, please check your installation and try again
/Library/Frameworks/Mono.framework/External/xbuild/Xamarin/Android/Xamarin.Android.Common.Debugging.targets(579,2): error ADB1000: Exception in thread "main" java.lang.UnsupportedClassVersionError: com/android/apksigner/ApkSignerTool has been compiled by a more recent version of the Java Runtime (class file version 53.0), this version of the Java Runtime only recognizes class file versions up to 52.0
/Library/Frameworks/Mono.framework/External/xbuild/Xamarin/Android/Xamarin.Android.Common.Debugging.targets(579,2): error ADB1000: at java.lang.ClassLoader.defineClass1(Native Method)
/Library/Frameworks/Mono.framework/External/xbuild/Xamarin/Android/Xamarin.Android.Common.Debugging.targets(579,2): error ADB1000: at java.lang.ClassLoader.defineClass(ClassLoader.java:763)
/Library/Frameworks/Mono.framework/External/xbuild/Xamarin/Android/Xamarin.Android.Common.Debugging.targets(579,2): error ADB1000: at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142)
/Library/Frameworks/Mono.framework/External/xbuild/Xamarin/Android/Xamarin.Android.Common.Debugging.targets(579,2): error ADB1000: at java.net.URLClassLoader.defineClass(URLClassLoader.java:468)
/Library/Frameworks/Mono.framework/External/xbuild/Xamarin/Android/Xamarin.Android.Common.Debugging.targets(579,2): error ADB1000: at java.net.URLClassLoader.access$100(URLClassLoader.java:74)
/Library/Frameworks/Mono.framework/External/xbuild/Xamarin/Android/Xamarin.Android.Common.Debugging.targets(579,2): error ADB1000: at java.net.URLClassLoader$1.run(URLClassLoader.java:369)
/Library/Frameworks/Mono.framework/External/xbuild/Xamarin/Android/Xamarin.Android.Common.Debugging.targets(579,2): error ADB1000: at java.net.URLClassLoader$1.run(URLClassLoader.java:363)
/Library/Frameworks/Mono.framework/External/xbuild/Xamarin/Android/Xamarin.Android.Common.Debugging.targets(579,2): error ADB1000: at java.security.AccessController.doPrivileged(Native Method)
/Library/Frameworks/Mono.framework/External/xbuild/Xamarin/Android/Xamarin.Android.Common.Debugging.targets(579,2): error ADB1000: at java.net.URLClassLoader.findClass(URLClassLoader.java:362)
/Library/Frameworks/Mono.framework/External/xbuild/Xamarin/Android/Xamarin.Android.Common.Debugging.targets(579,2): error ADB1000: at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
/Library/Frameworks/Mono.framework/External/xbuild/Xamarin/Android/Xamarin.Android.Common.Debugging.targets(579,2): error ADB1000: at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:349)
/Library/Frameworks/Mono.framework/External/xbuild/Xamarin/Android/Xamarin.Android.Common.Debugging.targets(579,2): error ADB1000: at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
/Library/Frameworks/Mono.framework/External/xbuild/Xamarin/Android/Xamarin.Android.Common.Debugging.targets(579,2): error ADB1000: at sun.launcher.LauncherHelper.checkAndLoadMain(LauncherHelper.java:495)
/Library/Frameworks/Mono.framework/External/xbuild/Xamarin/Android/Xamarin.Android.Common.Debugging.targets(579,2): error ADB1000:
/Library/Frameworks/Mono.framework/External/xbuild/Xamarin/Android/Xamarin.Android.Common.Debugging.targets(579,2): error ADB1000: at Xamarin.AndroidTools.PlatformPackage.GetPlatformPackagePathAsync (System.Int32 apiLevel, System.String aaptPath, Xamarin.AndroidTools.IProgressNotifier progressReporter, System.Threading.CancellationToken token) [0x00270] in /Users/builder/azdo/_work/451/s/xamarin-android/external/monodroid/tools/msbuild/external/androidtools/Xamarin.AndroidTools/PlatformPackage.cs:139
/Library/Frameworks/Mono.framework/External/xbuild/Xamarin/Android/Xamarin.Android.Common.Debugging.targets(579,2): error ADB1000: at Xamarin.AndroidTools.AndroidDeploySession.InstallSharedPlatformAsync () [0x000a9] in /Users/builder/azdo/_work/451/s/xamarin-android/external/monodroid/tools/msbuild/external/androidtools/Xamarin.AndroidTools/Sessions/AndroidDeploySession.cs:349
/Library/Frameworks/Mono.framework/External/xbuild/Xamarin/Android/Xamarin.Android.Common.Debugging.targets(579,2): error ADB1000: at Xamarin.AndroidTools.AndroidDeploySession.EnsureCorrectSharedRuntimes () [0x0017a] in /Users/builder/azdo/_work/451/s/xamarin-android/external/monodroid/tools/msbuild/external/androidtools/Xamarin.AndroidTools/Sessions/AndroidDeploySession.cs:270
/Library/Frameworks/Mono.framework/External/xbuild/Xamarin/Android/Xamarin.Android.Common.Debugging.targets(579,2): error ADB1000: at Xamarin.AndroidTools.AndroidDeploySession.RunAsync (System.Threading.CancellationToken token) [0x001f9] in /Users/builder/azdo/_work/451/s/xamarin-android/external/monodroid/tools/msbuild/external/androidtools/Xamarin.AndroidTools/Sessions/AndroidDeploySession.cs:198
/Library/Frameworks/Mono.framework/External/xbuild/Xamarin/Android/Xamarin.Android.Common.Debugging.targets(579,2): error ADB1000: at Xamarin.AndroidTools.AndroidDeploySession.RunLoggedAsync (System.Threading.CancellationToken token) [0x0002f] in /Users/builder/azdo/_work/451/s/xamarin-android/external/monodroid/tools/msbuild/external/androidtools/Xamarin.AndroidTools/Sessions/AndroidDeploySession.cs:123
/Library/Frameworks/Mono.framework/External/xbuild/Xamarin/Android/Xamarin.Android.Common.Debugging.targets(579,2): error ADB1000: Xamarin.AndroidTools.AndroidSdkToolException: Error: A JNI error has occurred, please check your installation and try again
/Library/Frameworks/Mono.framework/External/xbuild/Xamarin/Android/Xamarin.Android.Common.Debugging.targets(579,2): error ADB1000: Exception in thread "main" java.lang.UnsupportedClassVersionError: com/android/apksigner/ApkSignerTool has been compiled by a more recent version of the Java Runtime (class file version 53.0), this version of the Java Runtime only recognizes class file versions up to 52.0
/Library/Frameworks/Mono.framework/External/xbuild/Xamarin/Android/Xamarin.Android.Common.Debugging.targets(579,2): error ADB1000: at java.lang.ClassLoader.defineClass1(Native Method)
/Library/Frameworks/Mono.framework/External/xbuild/Xamarin/Android/Xamarin.Android.Common.Debugging.targets(579,2): error ADB1000: at java.lang.ClassLoader.defineClass(ClassLoader.java:763)
/Library/Frameworks/Mono.framework/External/xbuild/Xamarin/Android/Xamarin.Android.Common.Debugging.targets(579,2): error ADB1000: at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142)
/Library/Frameworks/Mono.framework/External/xbuild/Xamarin/Android/Xamarin.Android.Common.Debugging.targets(579,2): error ADB1000: at java.net.URLClassLoader.defineClass(URLClassLoader.java:468)
/Library/Frameworks/Mono.framework/External/xbuild/Xamarin/Android/Xamarin.Android.Common.Debugging.targets(579,2): error ADB1000: at java.net.URLClassLoader.access$100(URLClassLoader.java:74)
/Library/Frameworks/Mono.framework/External/xbuild/Xamarin/Android/Xamarin.Android.Common.Debugging.targets(579,2): error ADB1000: at java.net.URLClassLoader$1.run(URLClassLoader.java:369)
/Library/Frameworks/Mono.framework/External/xbuild/Xamarin/Android/Xamarin.Android.Common.Debugging.targets(579,2): error ADB1000: at java.net.URLClassLoader$1.run(URLClassLoader.java:363)
/Library/Frameworks/Mono.framework/External/xbuild/Xamarin/Android/Xamarin.Android.Common.Debugging.targets(579,2): error ADB1000: at java.security.AccessController.doPrivileged(Native Method)
/Library/Frameworks/Mono.framework/External/xbuild/Xamarin/Android/Xamarin.Android.Common.Debugging.targets(579,2): error ADB1000: at java.net.URLClassLoader.findClass(URLClassLoader.java:362)
/Library/Frameworks/Mono.framework/External/xbuild/Xamarin/Android/Xamarin.Android.Common.Debugging.targets(579,2): error ADB1000: at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
/Library/Frameworks/Mono.framework/External/xbuild/Xamarin/Android/Xamarin.Android.Common.Debugging.targets(579,2): error ADB1000: at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:349)
/Library/Frameworks/Mono.framework/External/xbuild/Xamarin/Android/Xamarin.Android.Common.Debugging.targets(579,2): error ADB1000: at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
/Library/Frameworks/Mono.framework/External/xbuild/Xamarin/Android/Xamarin.Android.Common.Debugging.targets(579,2): error ADB1000: at sun.launcher.LauncherHelper.checkAndLoadMain(LauncherHelper.java:495)
/Library/Frameworks/Mono.framework/External/xbuild/Xamarin/Android/Xamarin.Android.Common.Debugging.targets(579,2): error ADB1000:
/Library/Frameworks/Mono.framework/External/xbuild/Xamarin/Android/Xamarin.Android.Common.Debugging.targets(579,2): error ADB1000: at Xamarin.AndroidTools.PlatformPackage.GetPlatformPackagePathAsync (System.Int32 apiLevel, System.String aaptPath, Xamarin.AndroidTools.IProgressNotifier progressReporter, System.Threading.CancellationToken token) [0x00270] in /Users/builder/azdo/_work/451/s/xamarin-android/external/monodroid/tools/msbuild/external/androidtools/Xamarin.AndroidTools/PlatformPackage.cs:139
/Library/Frameworks/Mono.framework/External/xbuild/Xamarin/Android/Xamarin.Android.Common.Debugging.targets(579,2): error ADB1000: at Xamarin.AndroidTools.AndroidDeploySession.InstallSharedPlatformAsync () [0x000a9] in /Users/builder/azdo/_work/451/s/xamarin-android/external/monodroid/tools/msbuild/external/androidtools/Xamarin.AndroidTools/Sessions/AndroidDeploySession.cs:349
/Library/Frameworks/Mono.framework/External/xbuild/Xamarin/Android/Xamarin.Android.Common.Debugging.targets(579,2): error ADB1000: at Xamarin.AndroidTools.AndroidDeploySession.EnsureCorrectSharedRuntimes () [0x0017a] in /Users/builder/azdo/_work/451/s/xamarin-android/external/monodroid/tools/msbuild/external/androidtools/Xamarin.AndroidTools/Sessions/AndroidDeploySession.cs:270
/Library/Frameworks/Mono.framework/External/xbuild/Xamarin/Android/Xamarin.Android.Common.Debugging.targets(579,2): error ADB1000: at Xamarin.AndroidTools.AndroidDeploySession.RunAsync (System.Threading.CancellationToken token) [0x001f9] in /Users/builder/azdo/_work/451/s/xamarin-android/external/monodroid/tools/msbuild/external/androidtools/Xamarin.AndroidTools/Sessions/AndroidDeploySession.cs:198
/Library/Frameworks/Mono.framework/External/xbuild/Xamarin/Android/Xamarin.Android.Common.Debugging.targets(579,2): error ADB1000: at Xamarin.AndroidTools.AndroidDeploySession.RunLoggedAsync (System.Threading.CancellationToken token) [0x0002f] in /Users/builder/azdo/_work/451/s/xamarin-android/external/monodroid/tools/msbuild/external/androidtools/Xamarin.AndroidTools/Sessions/AndroidDeploySession.cs:123
Done building target "_Upload" in project "DebugAndroidIssue.Android.csproj" -- FAILED.
Done building project "DebugAndroidIssue.Android.csproj" -- FAILED.
Build FAILED.
你有这一行:
Exception in thread "main" java.lang.UnsupportedClassVersionError: com/android/apksigner/ApkSignerTool has been compiled by a more recent version of the Java Runtime (class file version 53.0), this version of the Java Runtime only recognizes class file versions up to 52.0
也许您应该在系统和项目中检查Java版本。尝试更新并重试,因为它们可能不是相同的版本号。是,这很奇怪。最后,我通过Android Studio更新了所有Android SDK。在这之后,一切又恢复正常了。