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

mjo*_*osh 117 android android-studio android-7.0-nougat

我的XML布局没有使用此错误消息进行渲染.我已经在使用Java 8了.

在此输入图像描述

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

android {
    compileSdkVersion 'android-N'
    buildToolsVersion 24.0.0 rc1
    ...
}
Run Code Online (Sandbox Code Playgroud)

XML错误 -

在此输入图像描述

Lal*_*oop 187

我在操作系统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>
...
Run Code Online (Sandbox Code Playgroud)

请注意,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. 使用您喜欢的文本编辑器编辑文件.

  • 这将更改运行Android Studio的虚拟机.在我的OSX中,原始值为:<key> JVMVersion </ key> <string> 1.6*,1.7 +,1.8 </ string>并且新值为:<key> JVMVersion </ key> <string> 1.8 </字符串> (11认同)
  • 有用!谢谢你的解决方案.问题是:为什么谷歌希望他的开发者在这个问题上浪费时间? (8认同)
  • 效果很棒!! 遗憾的是,当更新Android Studio(我刚刚对最新版本进行了更新)时,它会重置Info.plist文件,因此我必须再次重复这些步骤以更改我的JVMVersion:`<key> JVMVersion </ key> <string> 1.8 </string>`这么烦人的Android Studio! (7认同)
  • 感谢您解决谷歌缺乏文档:).我想知道为什么这个指令不在这里:https://developer.android.com/intl/pt-br/preview/setup-sdk.html#java8(这是android studio上显示的链接). (3认同)
  • Android Studio 2.2使用<string> 1.8*,1.8 + </ string>. (3认同)

小智 147

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

第一排图标在rpeview窗口中

  • 但我想在N中预览而不是在API 23中预览. (25认同)
  • 这对我有用(我还不需要"N").谢谢! (4认同)
  • 我在我的Mac上遇到了同样的问题.将API级别从24降低到23对我有用. (3认同)
  • 不是答案,请按照标记为正确的答案 (3认同)

mjo*_*osh 63

在我的例子中,设置JDK_HOMEJAVA_HOME环境变量C:\Program Files\Java\jdk1.8.0_60.

在此输入图像描述

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

在此输入图像描述

就是这样,现在您可以预览您的布局了N.


wum*_*mbo 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.

然后运行以下命令:

$ export STUDIO_JDK=/Library/Java/JavaVirtualMachines/jdk1.8.0_91.jdk
$ open /Applications/Android\ Studio.app/
Run Code Online (Sandbox Code Playgroud)

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

$ ls /Library/Java/JavaVirtualMachines/
Run Code Online (Sandbox Code Playgroud)

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

更多信息

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

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


you*_*ind 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}
Run Code Online (Sandbox Code Playgroud)

就这样.