Android要求编译器符合级别5.0或6.0。发现“ 1.7”。请使用Android工具>修复项目属性


286

是否有人对此有类似的问题,我导入了android项目,却遇到类似的错误

[2011-10-03 17:20:09 - Screen] Android requires compiler compliance level 5.0 or 6.0. Found '1.7' instead. Please use Android Tools > Fix Project Properties.
[2011-10-03 17:21:55 - App] Android requires compiler compliance level 5.0 or 6.0. Found '1.7' instead. Please use Android Tools > Fix Project Properties.
[2011-10-03 17:21:59 - App] Android requires compiler compliance level 5.0 or 6.0. Found '1.7' instead. Please use Android Tools > Fix Project Properties.

我在删除上述所有@Override函数时出错。我有Windows 7 x64,jvm7 x64。有谁知道出什么问题了吗?(我做了Android Tools-> Fix Project Properties但没有帮助)


您是否检查了该项目的Eclipse编译器符合性设置?示例
dmon 2011年

3
似乎Android SDK不能将1.7识别为Java7(当时与它所需要的兼容)。尝试将项目兼容性设置为Java6 :)
helios

Answers:


448

那不是问题,杰克。Android SDK不是x64,但可以与x64 jvm(和x64 eclipse IDE)一起使用。

正如helios所说,您必须将项目兼容性设置为Java 5.0或Java 6.0。

为此,有2个选项:

  1. 右键单击您的项目,然后选择"Android Tools -> Fix Project Properties"(如果此操作无效,请尝试第二个选项)
  2. 右键单击项目,然后选择"Properties -> Java Compiler",选中“启用项目特定设置”,然后从“编译器符合性设置”选择框中选择1.5或1.6 。

26
没帮我:-(
lzap

1
在我的情况下(我正在尝试编译OpenFeint Android示例),禁用“启用项目特定的设置”代替了。
user642252

1
当我使用第一个选项时,项目的R.java会自动删除
Naresh Sharma

不要使用1st选项,因为它会将编译器设置为1.5,这在大多数情况下还不够好。最好的方法是通过转到工具->首选项-> Java编译器,然后从下拉列表中选择1.6来更改整个工作区的编译器遵从级别。
nikib3ro 2012年

3
但是,如果您希望使用Compiler 1.7并仍然收到此错误怎么办?你该如何解决?
Shervin Asgari 2013年

20
  1. 转到项目文件夹并右键单击它- > properties ->选中只读框,然后单击确定

  2. 右键单击您的项目,然后选择 "Android Tools -> Fix Project Properties"

  3. 右键单击项目,然后选择"Properties -> Java Compiler""Enable project specific settings"然后从“编译器符合性设置”选择框中选择并选择1.5或1.6。(以防万一尝试所有级别)

  4. 在下Window -> Preferences -> Java -> Compiler,将Compiler符合级别设置为1.6或1.5。

希望它将解决问题。


可能已回答,但是在Windows文件系统(项目的文件夹位置)中,右键单击并将“只读”复选框设置为未选中。这解决了我的问题!
CodeMonkey 2014年

13

我建议使用xvm版本的jvm。当我第一次买到新笔记本电脑(x64)时,我想一直使用x64(jvm,jdk,jre,eclipse等)。但是,一旦完成所有设置,我便意识到Android SDK并非x64,因此出现了问题。返回到x86 jvm,您应该没问题。

编辑:11/14/13

我看到了一些最近的活动,并想进一步说明。

我没有说过它不适用于x64,我只是建议使用x86。

这是有关x64 JDK优点/缺点的好文章。64位Java平台的好处

思考过程:目的何在?为什么我要使用64位JDK?仅仅因为我有64位操作系统?我需要64位JDK的任何功能吗?64位JDK中有任何其他功能吗?为什么这不能一起玩!!F ***我要使用32位。


8

这样做Project-> Clean...为我修复了它。

我的eclipse停止工作了,所以我清理了workspace目录,并且在导入项目时运行eclipse之后,出现了这个问题。这里建议的其他解决方案无效。


6

对于大多数在修复项目属性后仍会收到错误的人,您可能在设置环境时安装了Java 7 SDK,但Android开发目前不支持该工具。

如错误消息所述,您应该已经安装了Java 5.0或6.0,但是找到了Java 7。

如果在未先安装Java 5或6的情况下修复了项目属性,您将再次看到相同的错误。

  • 因此,首先,请确保已安装Java SDK 5或6。
  • 检查您的环境变量(JAVA_HOME)是否指向SDK 5/6。

然后:

  • 检查默认情况下Eclipse是否使用SDK 5/6(Window => Prefs。=> Java => Compiler
  • 禁用项目特定设置(项目属性=> Java编译器)
  • 修复项目属性

要么

  • 默认情况下,使用JDK 7离开Eclipse。
  • 启用项目特定设置(项目属性=> Java编译器)
  • 选择Compiler Compliance 1.5或1.6(项目属性=> Java Compiler)

3

我同意BMSAndroidDroid和Flo-Scheild-Bobby。我正在做一个名为DailyQuote的教程,并使用了Cordova库。然后,我将操作系统从Windows更改为Ubuntu,并尝试将项目导入Eclipse((我在Ubuntu 12.04 64-bitOracle JDK 7 上使用Eclipse Juno 64位)。我还安装了Ubuntu 32位libs,因此64位和64位都没有问题。 32位),并遇到相同的问题。

根据Flo-Scheild-Bobby的建议,打开configure build路径并再次添加之前添加的jar。然后删除旧的jar链接即可。


3

我使用以下两个过程解决了此问题:

  1. 在Eclipse->“项目”菜单->“ Java编译器”->设置“编译器遵从性级别” = 1.6上,检查“使用默认遵从性设置”设置“生成的.class兼容性” = 1.6设置“源兼容性” = 1.6

  2. 然后转到“ Windows”菜单->“首选项”->“ Java”,展开“ Java”->“编译器”->设置“编译器符合级别” = 1.6

提示:源兼容性必须等于或小于合规级别。


不要使用SO来推广您的网站。
caiocpricci2 2012年

2

我建议您检查jar文件是否正确包含在您的项目中。在缺少jar文件的情况下,有可能无法编译项目


2

正如BMSAndroidDroid所说,此问题可能是由错误的构建路径配置引起的。

如果在构建路径中包括一些库,然后移动这些库,则构建路径将保存错误的引用,在编译过程中找不到这些库,并且会出现错误。

要解决此问题,请右键单击您的项目文件夹>构建路径>配置构建路径,然后查看库选项卡,并删除旧的库。


2

就我而言,从openjdk7切换到openjdk6很有帮助。之后,我将合规性级别更改为1.6,并且全部编译正确。


1

我遇到了这个问题,因为我的debug.keystore过期了,所以我删除了.android文件夹下的debug.keystore,日食将重新生成一个新的debug.keystore,然后我修复了这个问题


1

以下对我有用

Enable project-specific settings and set the compliance level to 1.6

你该怎么做?

在Eclipse Package Explorer3rd中,单击项目,然后选择properties。属性窗口将打开。Java Compiler在窗口的左侧面板上选择。现在Enable project specific settings,将设置Complier compliance level1.6。选择Apply,然后选择OK

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.