首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Android是否支持JDK 6或7

Android是否支持JDK 6或7
EN

Stack Overflow用户
提问于 2013-12-10 04:28:14
回答 4查看 50.7K关注 0票数 56

我是Android开发的新手。我可以在Android中使用使用JDK 7开发的现有Java代码吗?

这些函数使用xerces dom、xslt和xpathapi。目前,当我安装Android Eclipse ADT环境时,这些函数没有编译。我还想知道Android设备本身是否支持JRE 6或7?

EN

回答 4

Stack Overflow用户

发布于 2014-03-10 22:57:50

最初,Android开发工具只支持jdk 6特性。但这一点发生了变化,第一次是在2013年10月由Android Studio 0.3.2进行的参见:http://tools.android.com/recent/androidstudio032released

支持菱形运算符、多重捕捉、try-with-resources、开关中的字符串等语言特性。创建新项目时,可以指定源语言级别:

请注意,您不仅可以在Android KitKat中使用所有这些语言功能,也可以在更老版本的Android中使用这些功能!有一个例外: try-with-resources,它需要minSdkVersion 19。因此,如果您的minSdkVersion小于19,Studio将标记代码中是否使用了try-with-resources:

然后在2014年3月由ADT plugin22.6发布,参见:http://developer.android.com/tools/sdk/eclipse-adt.html

添加了对Java7语言特性的支持,如多捕获、带资源尝试和菱形运算符。这些功能需要版本19或更高版本的构建工具。试用资源需要minSdkVersion 19;其余的新语言功能需要minSdkVersion 8或更高版本。要在安装ADT 22.6.0之后使用新的语言特性,请确保在JDK 7上运行Eclipse,并将应用程序项目设置更改为使用JDK 7。

Android的目的不是100%兼容任何Java SE API版本,不是6、8或任何版本。这就是甲骨文起诉谷歌的法庭案件的原因,指控谷歌分裂Java。有些API在android上不可能像Swing一样实现;想象一下android上有一个带有关闭按钮的窗口!其他的延迟但实现了:例如: Charset类在Java SE 1.4中,但在android API 9中实现,Java 7中的AutoClosable在Android API level 19中实现,以允许实现与资源一起尝试的语言功能。有些API是存在的,但作为控制台有不同的用途。

票数 80
EN

Stack Overflow用户

发布于 2013-12-10 04:32:17

首先,Java JDK和JRE是有区别的。JRE是Java运行时环境,而JDK是Java开发工具包。它是您开发Android应用程序所需要的JDK,以及现有的Android SDK。

Android SDK可以使用JDK 6或7,但是它只能使用JDK 6 API。

票数 4
EN

Stack Overflow用户

发布于 2015-05-03 23:22:01

是的,jdk 7现在从build tools 19开始支持android

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/20480090

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档