Android N要求IDE使用Java 1.8或更高版本运行吗?

时间:2016-03-10 22:25:49

标签: android android-studio android-7.0-nougat

我的XML布局未呈现此错误消息。我已经在使用Java 8了。

enter image description here

还在Gradle中使用最新的构建工具。

android {
    compileSdkVersion 'android-N'
    buildToolsVersion 24.0.0 rc1
    ...
}

XML错误 -

enter image description here

17 个答案:

答案 0 :(得分:187)

我在OS X上遇到了相同的错误。我知道这可能无法解决您的问题(因为我不知道Windows的等效内容),但由于这不是特定于操作系统的,因此我将离开任何解决方案那里的OS X研究员。 编辑文件/Applications/Android\ Studio.app/Contents/Info.plist,并删除1.6版本(在我的情况下),您可以放置​​1.6 +,1.7 +或1.8,无论您喜欢哪个。我这样结束了

...
<key>JVMVersion</key>
<string>1.7+</string>
...

请注意,java版本1.8_60到1.8_75(IDEA-146691)与拖放不兼容,一旦您成功更改版本,IDE就会报告这些版本。

非终端用户

  1. 找到您的Android Studio.app文件。如果它在停靠栏中,您可以右键单击它并选择Options > Show in Finder
  2. 右键单击它并选择Show package content
  3. 导航到上述文件(Contents/Info.plist)。
  4. 使用您喜欢的文本编辑器编辑文件。

答案 1 :(得分:147)

单击预览窗口中android图标旁边的字母N,然后选择API级别23或更低级别。那应该解决它。

First row of icons in the rpeview window

答案 2 :(得分:63)

设置JDK_HOMEJAVA_HOME个环境变量,在我的情况下为C:\Program Files\Java\jdk1.8.0_60

enter image description here

检查Help > About中的Java版本。它应该显示您刚刚设置的JRE版本。

enter image description here

就是这样,现在您可以在N预览布局。

答案 3 :(得分:27)

Mac用户遇到此问题(我正在运行OS X 10.11.5和Android Studio 2.1.2),以下是解决问题的方法:

目前,Mac版的Android Studio使用Java 6运行(不一定与应用程序的JDK版本相同),因为Java 6具有比Java 7更好的字体呈现效果。 8,这显然比渲染你的布局更重要。

首先,请确保您拥有JDK 8 installed

然后运行以下命令:

$ export STUDIO_JDK=/Library/Java/JavaVirtualMachines/jdk1.8.0_91.jdk
$ open /Applications/Android\ Studio.app/

您可能需要将91中的jdk1.8.0_91.jdk更改为其他版本。您可以看到您拥有的JDK版本:

$ ls /Library/Java/JavaVirtualMachines/

不幸的是,这种方法需要从终端打开应用程序,但您总是可以为它创建一个脚本。

More info

编辑:如果您真的不想从终端打开它:

  1. 创建包含内容的AppleScript: do shell script "export STUDIO_JDK=/Library/Java/JavaVirtualMachines/jdk1.8.0_91.jdk; open /Applications/Android\\ Studio.app/"
  2. 文件&gt;保存选择文件格式应用程序。把它保存到某个地方。
  3. 如果您想更改图标see here.
  4. 如果您愿意,请将应用拖到启动板。

答案 4 :(得分:5)

我遇到了同样的问题。

我安装了jdk1.6,jdk1.7,jdk1.8,并按照你的方式部署了Studio。

我的解决方案是卸载jdk1.6和jdk1.7,只留下jdk1.8

sudo rm -rf ${path to jdk1.6}
sudo rm -rf ${path to jdk1.7}

这就是全部。

答案 5 :(得分:2)

我正在使用Ubuntu 14.04而且我遇到了类似的错误,差异我没有NDK。我的解决方案是,在项目定义中设置Java 8之后,重新启动Android Studio。

检查系统Java版本,在控制台&#34; java -version&#34;,输出应该说是这样的

java version "1.8.0_91"

答案 6 :(得分:2)

与Ubunutu有同样的问题。问题是没有使用Java8运行IDE。

我修复了它,更新了操作系统的默认java程序,使用:

sudo update-alternatives --config java

选择相关的Java8路径。

答案 7 :(得分:1)

我遇到了问题“Android N要求IDE使用Java 1.8或更高版本运行。”尽管在C:\Program Files\Java\jdk1.8.0_92中将File > Project Structure设置为项目的JDK,但错误仍然显示出来。

我通过将C:\Program Files\Java\jdk1.7.0_67C:\Program Files\Java\jdk1.8.0_92的环境变量中的JAVA_HOME更新来解决了这个问题。当我这样做并重新启动Android Studio时,设计模式变得可用。

操作系统:Windows 10

Android Studio:2.1.2

答案 8 :(得分:1)

我已经用这种方式解决了它。(AS + MAC OX El Capitan)

  1. 更新SDK工具&gt; Android SDK平台工具
  2. 转到帮助&gt;编辑自定义属性&gt;对话框将提示(按是)然后写

    JVMVersion=1.8 
    
  3. 然后完全关闭Android Studio并重新加载项目

答案 9 :(得分:1)

来自文档: https://developer.android.com/studio/intro/studio-config.html#file_location

  

STUDIO_JDK:设置用于运行Studio的JDK

我更喜欢使用 STUDIO_JDK 变量并保留其他默认的java home变量。

答案 10 :(得分:0)

我最近遇到了同样的问题。尝试将API预览级别更改为23或更低。这对我有用。

答案 11 :(得分:0)

我的问题是Android N“部分安装”。

我的解决方案是去 - 首选项/外观和行为/系统设置/ Android SDK并检查状态。如果它是“部分安装”,那么你必须卸载然后重新安装。 (取消选中该复选框并单击“应用”;它将卸载;然后您可以选中该复选框并再次安装)为我工作。如果你转到较低版本(如23),那么你必须在build.gradle中将buildToolsVersion变量更改为“23.0.0”。

答案 12 :(得分:0)

我遇到了同样的问题。请确保您为已编译的SDK版本呈现XML布局(不能更大)。如果您使用Targeted SDK版本23编译代码并尝试在SDK版本24中呈现XML,则意味着您将面临此问题。

答案 13 :(得分:0)

在Mac OS上设置STUDIO_JDK时需要记住几件事:

  • 默认情况下,Apple的Java 1.6用于启动Android Studio
  • 当STUDIO_JDK设置为Oracle的Java时,Android Studio将使用它来运行

两者之间的区别在于Apple的Java IMO在IDE中提供更好,更好的字体抗锯齿。

回复here引用了Android Studio中关于字体抗锯齿的bug。故障单已经关闭,但Apple Java和Oracle SDK仍然呈现不同(我有v1.8.0_102)。而前者仍然比上一次有更好的感知。

答案 14 :(得分:0)

尝试在Java 1.8项目中使用-下载最新版本的JDK并安装(如果不存在JSK的话)

然后添加到build.gradle这些行 android { ... //仅为使用Java 8的每个模块进行配置 //语言功能(在其源代码或 //通过依赖项)。 compileOptions { sourceCompatibility JavaVersion.VERSION_1_8 targetCompatibility JavaVersion.VERSION_1_8 } //对于Kotlin项目 kotlinOptions { jvmTarget =“ 1.8” } }

答案 15 :(得分:-1)

机器:windows8 64bit 在我的情况下,我安装的jdk1.7是32位,因此我使用的是studio.exe(32位),所以即使我下载了新的jdk1.8(64位)我使用的工作室实例(32位)也无法检测到它,但是当我卸载旧的jdk并试图重新运行studio.exe时,我被告知要安装一个32位的jdk。 所以我运行了studio64.exe,运行顺利。 确保您的环境变量中有正确的路径。欢呼android N

答案 16 :(得分:-1)

确保在启动Android Studio(x64)时安装了x64而不是x84的jdk

enter image description here