Android 源代码中JAVA 版本问题
Android 的源代码现在要求开发环境的Java 版本为1.5 . ?当时在搭建开发环境的时候,没有注意到 java 版本的要求,就安装了 1.6 版的java。 结果在编译的时候遇到了java 版本检测不通过的问题。
?? 打开文件?build\core\main.mk ,找到 java 版本检测的地方,屏蔽原来的代码,添加新的一行判断为:
?
# 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\.6[\. "$$]')
?? java 版本判断有两处,另外一处也同样修改为:# 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\.6[\. "$$]')?这样修改就可以在编译 Android 的时候,顺利编译通过。后来在编译 Android SDK 的时候,遇到提示:Docs droiddoc: out/target/common/docs/dxjavadoc: 错误 - 在 doclet 类 DroidDoc 中,方法 start 已抛出异常 java.lang.reflect.InvocationTargetExceptioncom.sun.tools.javac.code.Symbol$CompletionFailure: 未找到 sun.util.resources.OpenListResourceBundle 的类文件1 错误make: *** [out/target/common/docs/dx-timestamp] Error 45?? 其实在编译过程中我是不需要编译SDK 的文档部分的,这个问题是由于java 的版本不是 1.5 的原因。 不想再去把开发环境中的java 版本换成 1.5的,便决定屏蔽了 droiddoc 的编译。?? 打开?build\core\droiddoc.mk 文件找到 ?ALL_DOCS += $(full_target)?? 把这一行屏蔽。既可 1 楼 feiyunruyue 2011-03-29 [out/target/common/docs/dx-timestamp] Error 45