java Lang UnsupportedClassVersion Error in Xamarin Studio
我在构建项目时遇到以下错误。如何更正此问题?
C:Program Files(x86)msbuildxamarinandroidxamarin.android.common.targets(3,3):错误:java.lang.unsupportedClassVersionError:com/android/dx/command/main:unsupported major.minor version 52.0(fgh)
帮助>关于>显示详细信息中的我的版本信息:
xamarin.android版本:6.0.2.1(入门版)android sdk:c:usersadminappdatalocalandroidandroid sdk
支持的Android版本:
- 4.0.3(API等级15)
- 4.4(API 19级)
- 6.0(API等级23)
SDK工具版本:24.4.1SDK平台工具版本:23.0.1SDK生成工具版本:24 RC2
JavaSDK:C:程序文件(x86)javajdk1.7.0y71.Java版本"1.7.0y72"Java(TM)SE运行时环境(构建1.7.0y71-B14)Java热点(TM)客户端VM(构建24.71-B01,混合模式,共享)
Unsupported major.minor version 52.0
此错误消息是由Java JDK与Android SDK构建工具版本24的不兼容引起的,而更高的要求Java JDK 8(1.8),而较早的版本仍然与Java JDK 7(1.7)兼容。(这类似于关于相同错误的老答案。)
更新步骤:
更新到Java JDK 8。建议使用64位版本与Xamarin Studio 6.1和Xamarin for Visual Studio 4.2中的新Xamarin Android Designer功能兼容。
在XAMARIN首选项中,选中JavaJDK 8:
VisualStudio:工具>选项> XAMARIN > Android设置> Java开发工具包位置。
MGXY1·0选项> XAMARIN > Android设置> Java开发工具包位置"VisualStudio">
XAMARIN工作室(在Mac上):XAMARIN工作室>偏好>项目> SDK位置> Android > Java SDK(JDK)。
MGXY1→1选项>项目> SDK位置> Android > JAVA SDK(JDK)>
安装Android SDK构建工具24.0.1或更高版本。
(可选)卸载较早的android sdk build tools 24,该工具在
选择:
如果你还不想更新Java JDK 8,你可以做下列操作之一。
通过android sdk manager卸载所有android sdk构建工具版本24及更高版本。
或者将
AndroidSdkBuildToolsVersion msbuild属性设置为早期版本。例如,如果还安装了版本23.0.3,则可以在android项目.csproj 文件的顶部 元素中添加以下行:1<AndroidSdkBuildToolsVersion>23.0.3</AndroidSdkBuildToolsVersion>
(另请参见https://releases.xamarin.com/technical-bulletin-android-sdk-build-tools-24/)
其他背景信息2016年7月25日更新:
谷歌已经发布了android sdk构建工具24.0.1。该版本修复了版本24中存在的
更新日期:2016年7月14日:
Unsupported major.minor version 52.0
原来这个错误消息是由Java JDK与XAMARIN不兼容造成的:Android:Android SDK构建工具版本24需要Java JDK 1.8,而早期版本仍然兼容Java JDK 1.7。(这类似于关于相同错误的老答案。)
2016年6月16日更新:
android sdk build tools版本24的非预览版本现在在android sdk manager中提供。Android也与该版本不兼容。
2016年4月12日信息:
SDK Build Tools Version: 24 rc2
"构建工具版本"看起来可能是问题所在。android还不能与android sdk manager中的"预览频道"中的"24 rc2"构建工具版本兼容。您可以使用android sdk manager卸载该预览版本并安装一个构建工具的非预览版本(如23.0.3)。
这里的版本52.0是指JDK的特定版本,在本例中,它与JDK 8相关。
xamarin.android 7.0需要JDK 1.8使用Android Nougat(API 24)API。您可以继续使用JDK的版本,如果针对早期的Android API级别:
JDK 1.8-API 24之前+
JDK 1.7-至API 23
JDK 1.6-最高API 20
此外,使用自定义控件需要64位版本的JDK在安卓系统中设计师。
最简单的选择是安装64位版本的JDK 1.8,因为它是向后兼容所有以前的API级别并支持新的Android设计师的功能。
(JDK 1.8的一个不幸的并发症是它与Android SDK中包含的Proguard的过时版本。目前这将导致错误"不支持的类版本号[52.0]",当尝试在xamarin.android中使用proguard或multidex功能。见44187。我建议您将其安装在Android在
解决方案!
将Java SDK更改为1.8。重新启动Visual Studio后,运行"清理解决方案"、"生成"并感到高兴!
下载最新的JDK并安装,
然后去:
- VS2015工具>选项> XAMARIN,并将Java更改为最新版本JDK位置。
- Xamarin Studio:工具->选项->SDK位置
希望这有帮助。
正如BrendanZagaski所说,这是由于使用构建工具的预览版本而产生的问题。
请遵循这些步骤
- 打开SDK管理器
- 选择版本为24RC2的生成工具(请确保仅选择此项)
- 单击卸载
更新:详细答案可以在这里找到:https://stackoverflow.com/a/37827161/5073734
**2016年11月更新**我的一些朋友告诉我,Nuget软件包也可能发生这种情况。如果上述问题无法解决,请尝试重新安装Nuget软件包。
我意识到这已经有点老了,但我也遇到了这个问题,我在网上发现的任何东西都无法解决它。最后,我尝试卸载并重新安装我安装的一些nuget包(sqlite.net)。在那之后,它编译了。希望这对那些已经用尽了这些更常见的解决方案的人有用。
确保如果在vs你去项目>项目名称属性>应用程序您已在Android SDK中下载了所有选定版本
假设您只安装了Android 6.0(23级)和5.1.1(22级)的API,但您将最低Android设置为低于16级。它将给出java.lang.UnsupportedClassVersionError:error。
只要确保使用正确的API级别
删除版本24,下载并安装JDK 1.8GY112,将Java开发工具包更改为JKD1.8Y112(现在在程序文件中找到,而不是程序文件x86),并且重建项目对我来说是个诀窍。
我面临同样的问题,我的系统安装了Java版本1.7。我在系统中安装了1.8版本。
JDK工具的更新路径->选项> > XAMARIN > Android设置>(Java开发工具包位置)将JDK路径设置为新JDK版本
再次重建项目,问题解决。
几分钟前我也遇到了同样的问题。确定解决方案:A到工具>选项> XAMARIN > Android设置> Java开发工具包位置>将其更改为JDK 1.8请确保指向当前的Java版本
100%工作