错误:compileSdkVersion android-21需要使用JDK 7进行编译

时间:2014-11-01 12:56:03

标签: android macos

编译时我收到错误Error:compileSdkVersion android-21 requires compiling with JDK 7,说需要更新版本的JDK。

我使用Android Studio v0.8.14在OS X Yosemite上运行

我检查过的事情:

  1. Java版:
  2. java version "1.8.0_25" Java(TM) SE Runtime Environment (build 1.8.0_25-b17) Java HotSpot(TM) 64-Bit Server VM (build 25.25-b02, mixed mode)

    1. 在JavaVirtualMachine文件夹中,我只能看到1.6.0.jdk文件夹,我找不到任何其他文件夹。

    2. 尝试重新安装JDk 8和7!

    3. 我无法找到jvm 1.8的文件夹位置,知道如何解决这个问题。

8 个答案:

答案 0 :(得分:224)

此问题的精确修复(Mac上的Android Studio用户)

如果您已经升级到Java 8,请注意JDK位置现在在/Library/Java内,与Java 6的位置/System/Library/Java相比。因此,要解决此问题,请右键单击项目文件夹> 项目结构> SDK位置。

然后将JDK位置更改为

/Library/Java/JavaVirtualMachines/jdk1.8.0_25.jdk/Contents/Home

如果您安装了不同的JDK版本(Java 8除外),请先使用java_home脚本查找路径并使用输出。跑吧,

/usr/libexec/java_home 

答案 1 :(得分:29)

实际上我刚刚找到了解决方案 - JDK 7位于/Library/Java/JavaVirtualMachines/jdk1.7.0_71.jdk/Contents/Home中。

让它为我工作。 Oracle Docs on where JDK7 is installed

答案 2 :(得分:10)

我有一个解决方案。它也发生在我身上,我在Google上搜索了很多,但我得到的只是提示。很多提示。我想出了一个确定的解决方案。

这是因为计算机没有安装JDK 7(或更高版本)。 AS / Configuration中的JDK目录可能指向JDK6。 (那个系统/图书馆/...)

您需要做的就是:

  1. 下载最新的JDK。
  2. 安装它。
  3. 将Android Studio /配置/项目默认值/项目结构/(JDK位置:)指向 /Library/Java/JavaVirtualMachines/jdk1.8.0_25.jdk /内容/首页
  4. 以粗体斜体突出显示的文字可能有所不同,因此建议您浏览它。 希望这可以帮助。花了一整天搞乱gradle,android studio。快乐的编码。

答案 3 :(得分:7)

我发现Eric和Subin的答案结合起来解决了我的问题:

即。需要将java JDK设置为Eric的答案(假设您使用的是JDK 7):

/Library/Java/JavaVirtualMachines/jdk1.7.0_71.jdk/Contents/Home。

我犯的错误是我试图选择jdk1.7.0_71.jdk目录并且我一直收到错误消息“请选择一个有效的JDK目录”。

我正在研究以前用于JDK 6的格式:( - 当我向内容/主页提供完整路径时,它工作正常。

Subin的回答告诉你如何找到你的JDK位置,这取决于你想要做什么。

感谢Eric和Subin!

答案 4 :(得分:3)

我正在分享这个,因为我想帮助那些在Google搜索错误时发现这个问题的人。互联网上的大多数其他“答案”非常耗时。在你浪费这么多时间之前,按照下面的说法进行操作。

<小时/> 我所做的是下载JDK 7

然后将jdk的设置更改为1.7.0

enter image description here

答案 5 :(得分:3)

我也遇到过这个问题。到目前为止,我找不到它的修复方法,因此我已经将最大的SDK版本更改为20,这与JDK6一起使用。

至于文件位置,而不是Android工作室,假设它应该在/ System / Library / Java / JavaVirtualMachines / 插入JDK版本 / Contents / Home。

实际上我的JDK安装在/ Library / Java / JavaVirtualMachines / JDK Version Here / Contents / Home。

尝试在其安装的实际目录中选择一个JDK,让android studio说我需要选择一个有效的JDK位置。现在我无法找到修复方法,就像我上面所说的那样,我已经将最大的SDK版本更改为20而不是21,它会保持这样,直到更多的人要么遇到这个bug,以便谷歌修复它。或者直到实际修复在线发布而不是101种方式才能使其无效。

希望现在有所帮助,它不是一个真正的解决方案/答案,但它是一个适合我的工作,暂时。

答案 6 :(得分:0)

如果您只有文件夹1.6.0.jdk,请转到此link并下载并安装jdk 1.7。然后在此路径中找到您的java文件夹

/Library/Java/JavaVirtualMachines/jdk1.7.0_71.jdk/Contents/Home

答案 7 :(得分:0)

  1. 下载from here最新的JDK。
  2. 打开命令行工具。
  3. 将以下行复制并粘贴到命令行工具中,然后按“返回”。
  4.   

    的/ usr /的libexec / JAVA_HOME

    1. 复制此命令的输出。
    2. 返回您的Android项目,并按如下方式导航
    3.   

      档案 - &gt;项目结构 - &gt; JDK位置

      编辑(点击带有三个点的正方形)JDK位置(图像中的第2个)并在那里粘贴命令行工具。

      enter image description here 我已经使用MacBook Pro收集了这些说明。