Android Studio是否完全支持JDK 1.8?

时间:2015-07-21 01:11:47

标签: java android android-studio

我刚刚从我之前的JDK 1.8.0_33下载了JDK 1.8.0_51,因为我遇到了问题。有一些使用Jdk 8与Android的解决方法,我只是想知道Google已经在Android工作室中添加了对JDK的全面支持吗?或者我应该只使用JDK 1.7?建议将受到高度赞赏。

8 个答案:

答案 0 :(得分:15)

你现在可以使用java8和android

在build.gradle文件中添加以下行

compileOptions {
    sourceCompatibility JavaVersion.VERSION_1_8
    targetCompatibility JavaVersion.VERSION_1_8
  }

参考此文档http://developer.android.com/intl/es/preview/j8-jack.html

确保以下方式启用Jack:

android {
  //...

  defaultConfig {
  //...

  // Required to use Java 8.
  jackOptions {
    enabled true
  }

}

此外,您需要使用Android SDK构建工具的24或更高版本:

android {
  //...

  buildToolsVersion "25.0.2"

}

答案 1 :(得分:10)

您应该只使用JDK 1.7。 JDK 8中有一些功能尚不支持。

答案 2 :(得分:6)

使用JDK 1.8是可以的,除了Android Studio可能经常提供运行时检查,建议您使用JDK 1.8的功能,如lambda,没有什么会打扰你。但您可以转到设置 - >编辑 - >检查 - > Java语言级别问题/迁移辅助工具并关闭所需内容。

答案 3 :(得分:5)

您可以使用java 1.8但不要使用1.8功能,因为Java 1.8中有一些功能现在不受支持。

答案 4 :(得分:3)

如果您之前使用的是从Android Studio 3.0.0弃用的JACK选项,那么迁移和使用支持的Java 8语言功能就像删除

一样简单

<击>   

jackOptions {enabled true}   

来自应用的 build.gradle 文件,并按如下方式保护配置:

android {
  ...
  compileOptions {
    sourceCompatibility JavaVersion.VERSION_1_8
    targetCompatibility JavaVersion.VERSION_1_8
  }
}

有关详细信息,请点击this链接。

答案 5 :(得分:2)

使用Java 1.7或Java 1.6 我自己使用Android 4和Java 7时遇到了问题,因此我使用了1.6并且所有问题都已消失。

我认为使用1.7而不是1.8

会减少问题

答案 6 :(得分:0)

我在java更新到1.8后开始出现此错误

错误:任务':app:processDebugResources'执行失败。

  

com.android.ide.common.process.ProcessException:org.gradle.process.internal.ExecException:处理'命令'C:\ Users \ whatever \ AppData \ Local \ Android \ sdk \ build-tools \ 23.0。 1 \ aapt.exe''以非零退出值1结束

答案 7 :(得分:0)

实际上,当您尝试使用Java 8构建Android Studio项目时,会遇到各种疯狂的Gradle错误,例如

2016-04-10 17:50:49,401 [1624477] WARN - nal.AbstractExternalSystemTask - Gradle 2.10需要运行Java 6或更高版本。您的构建当前配置为使用Java 5。 com.intellij.openapi.externalSystem.model.ExternalSystemException:Gradle 2.10需要运行Java 6或更高版本。您的构建当前已配置为使用Java 5.

一旦我将默认的JDK切换到Java 7,它就可以正常工作。看起来可以容忍使用Java SE 8运行Android Studio,但是通过Gradle构建Android应用程序只适用于Java 7。