错误:compileSdkVersion android-21需要使用JDK 7编译
编译时出现Error:compileSdkVersion android-21 requires compiling with JDK 7
,并说需要更新版本的JDK。
我正在使用Android Studio v0.8.14在OS X Yosemite上运行
我检查的东西:
- Java版本:
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)
-
在JavaVirtualMachine文件夹里面我只能看到
1.6.0.jdk
文件夹,我找不到其他文件夹。 -
尝试重新安装JDK 8和7!
我无法findjvm 1.8的文件夹位置,任何想法如何我可以在那里修复。
这个问题的精确修复(Mac上的Android Studio用户)
如果您已经升级到Java 8,请注意,与Java 6的位置/System/Library/Java
相比,JDK位置现在位于/System/Library/Java
。 所以要解决这个问题,请右键点击Project文件夹 > Project Structure > SDK Location。
然后将JDK位置更改为
/Library/Java/JavaVirtualMachines/jdk1.8.0_25.jdk/Contents/Home
如果您安装了不同于JDK的版本(Java 8除外),请首先使用java_home
脚本查找path并使用输出。 赶紧跑,
/usr/libexec/java_home
其实我只是find了解决scheme – JDK 7是在/Library/Java/JavaVirtualMachines/jdk1.7.0_71.jdk/Contents/Home。
这让它为我工作。 关于安装JDK7的Oracle Docs
我有一个解决scheme。 它也发生在我身上,我在Google上search了很多,但是我得到的只是一些提示。 很多提示。 我想出了一个可靠的解决scheme。
这是因为计算机没有安装JDK 7(或更高版本)。 AS / Configuration中的JDK目录可能指向JDK6。 (该系统/库/ …)
所有你需要做的是:
- 下载最新的JDK。
- 安装它。
- Android Studio /configuration/项目默认值/项目结构/(JDK位置:)到/ Library / Java / JavaVirtualMachines / jdk1.8.0_25.jdk /目录/主页
以粗体显示的文本可能会有所不同,因此build议您浏览它。 希望这可以帮助。 花了整整一天搞乱了gradle,android studio。 快乐的编码。
我发现埃里克和苏宾的答案共同解决了我的问题:
即需要将Java JDK设置为Eric的答案(假设您使用的是JDK 7):
/Library/Java/JavaVirtualMachines/jdk1.7.0_71.jdk/Contents/Home。
我犯的错误是我试图只selectjdk1.7.0_71.jdk目录,并不断收到错误消息“请select一个有效的JDK目录”。
我正在使用以前用于JDK 6的格式:(当它将完整path下载到Contents / Home中时,它工作正常。
Subin的答案告诉你如何find你的JDK的位置,这可能是不同的,取决于你想要做什么。
感谢Eric和Subin!
我分享这个,因为我想帮助那些发现这个问题时,他们谷歌search错误。 互联网上的大多数“答案”都非常耗时。 按照下面的方式,你像我这样浪费了很多时间。
我所做的就是下载JDK 7
然后将jdk的设置更改为1.7.0
我也一直有这个问题。 到目前为止,我找不到一个修复,所以我已经把最大的SDK版本改为20,这与JDK6。
至于文件位置,而不是Android工作室假设它应该在/ System / Library / Java / JavaVirtualMachines / 插入JDK版本 / Contents / Home。
实际上,我的JDK安装在/ Library / Java / JavaVirtualMachines / JDK Version Here / Contents / Home中。
试图select一个JDK的实际目录,其安装使得android studio说我需要select一个有效的JDK位置。 现在我找不到解决办法了,就像我上面所说的那样,我已经把最大的SDK版本改为20而不是21,它会一直保持这样的状态,直到更多的人受到这个bug的困扰,让Google修复它。 或者直到一个实际的修补程序在网上发布,而不是101的方式,它不工作。
希望这有助于现在,这不是一个真正的解决scheme/答案,但它是一个解决scheme,对我来说暂时工作。
如果你只有文件夹1.6.0.jdk然后去这个链接并下载并安装JDK 1.7。 然后在这个path中find你的java文件夹
/Library/Java/JavaVirtualMachines/jdk1.7.0_71.jdk/Contents/Home
此线程上的解决scheme对于Android Studio 1.4中的相同错误无效。 例如,首选项菜单已经消失。 以下是在Ubuntu 14.04上运行的Android Studio 1.4的解决scheme。
要在Ubuntu 14.04+和Android Studio 1.4+中解决,你需要去
文件 – >其他设置 – >默认设置 – >生成,执行,部署 – >编译器 – > Java编译器 – >项目字节码版本
这个下拉菜单默认是空的。
设置为您的首选JDK,下面的屏幕截图为1.8。
瞧,你的项目会编译。
- 从这里下载最新的JDK。
- 打开命令行工具。
- 将以下行复制并粘贴到命令行工具中,然后按回车键。
的/ usr /的libexec / JAVA_HOME
- 复制此命令的输出。
- 回到你的Android项目,并导航如下
文件 – >项目结构 – > JDK位置
编辑(点击三个点的方块)JDK位置(图像中的第二个),并粘贴命令行工具输出。
我已经使用MacBook Pro收集了这些说明。
- TimePickerDialog和AM或PM
- 使用自定义行为为CollapsingToolbar创build多个“定位点”/位置
- 在Android中比较位图图像
- EGL_emulation无法build立连接到主机 – 安卓
- WebViewClient onReceivedError已弃用,新版本不检测所有错误
- 我如何在Eclipse中更新我的ADT?
- Android – SupportMapFragment与GoogleMaps API 2.0给IllegalArgumentException
- less于160个字符时,SMSpipe理器发送mutlipart消息
- Firebase 401未经授权的错误FCM