编译Android(安卓)使用 Java5 还是 Java6
现在越来越多的代码开始使用java 6 的feature, 而 Android 却要求java5!
这给开发带来麻烦:得装两个版本的java, 然后用 update-alternatives 去切换,注意有3个相关程序:
update-alternatives --config java
update-alternatives --config javac
update-alternatives --config javadoc
经过试验,发现android 可以使用java6, 需要:
1)修改build/core/main.mk 中相关检查代码,使其识别java6
# Check for the correct version of java
-java_version := $(shell java -version 2>&1 | head -n 1 | grep '[ "]1/.5[/. "$$]')
+java_version := $(shell java -version 2>&1 | head -n 1 | grep '[ "]1/.[56][/. "$$]')
ifeq ($(strip $(java_version)),)
$(info ************************************************************)
$(info You are attempting to build with the incorrect version)
@@ -149,7 +149,7 @@ $(error stop)
endif
# Check for the correct version of javac
-javac_version := $(shell javac -version 2>&1 | head -n 1 | grep '[ "]1/.5[/. "$$]')
+javac_version := $(shell javac -version 2>&1 | head -n 1 | grep '[ "]1/.[56][/. "$$]')
ifeq ($(strip $(javac_version)),)
$(info ************************************************************)
$(info You are attempting to build with the incorrect version)
2) javadoc 仍然需要使用 1.5 版本
更多相关文章
- Android(安卓)核心已经从 Linux kernel 代码库中删除
- Android(安卓)/ iOS 静态代码扫描工具调研
- 【笔记】Android高版本Apache HTTPClient变更兼容和HTTP请求
- Android比较好的10个开源框架
- Android(安卓)开发笔记1
- android系统信息(内存、cpu、sd卡、电量、版本)获取
- Android(安卓)内部API (android.internal)和隐藏代码(@hide)概述
- Android(安卓)Intent 用法全面总结
- Android(安卓)TextView setMovementMethod 滑动 背景