下载了android froyo版本编译,提示java版本不对,找了一下判断的地方

在 build/core/main.mk中

 

找到这两句话把其中的5改成6就好了

java_version := $(shell java -version 2>&1 | head -n 1 | grep '[ "]1/.5[/. "$$]')

javac_version := $(shell javac -version 2>&1 | head -n 1 | grep '[ "]1/.5[/. "$$]')

java_version := $(shell java -version 2>&1 | head -n 1 | grep '[ "]1/.6[/. "$$]')

javac_version := $(shell javac -version 2>&1 | head -n 1 | grep '[ "]1/.6[/. "$$]')

 

 

一路编译下来没有问题,但是在make sdk的时候又出现了下面的错误

Docs droiddoc: out/target/common/docs/dx 
         javadoc: error - In doclet class DroidDoc, method start has thrown an 
         exception java.lang.reflect.InvocationTargetException 
         com.sun.tools.javac.code.Symbol$CompletionFailure: class file for 
         sun.util.resources.OpenListResourceBundle not found 

找了一下发现,网上的解决办法都是安装java 1.5去编译,偶又不想在系统上再装一个版本jdk了,研究了一下最新的版本anroid-AOSP代码已经没有这个问题了.

发现是在build/core/droiddoc.mk中添加了 -bootclasspath , 指定了rt.jar的路径。

对比两个代码生成了patch,可以保存到anroid源代码根目录然后用下面命令打补丁。

patch -p0

然后在make sdk就没有问题了。

--- build/core/droiddoc.mk 2010-12-02 15:57:04.595615674 +0800 +++ ../android_work1/build/core/droiddoc.mk 2010-12-02 15:23:52.579616182 +0800 @@ -57,6 +57,13 @@ $(full_target): PRIVATE_CLASSPATH:=$(LOCAL_CLASSPATH) full_java_lib_deps := +$(full_target): PRIVATE_BOOTCLASSPATH := +ifeq ($(BUILD_OS),linux) +# You have to set bootclasspath for javadoc manually on linux since Java 6. +host_jdk_rt_jar := $(dir $(HOST_JDK_TOOLS_JAR))../jre/lib/rt.jar +$(full_target): PRIVATE_BOOTCLASSPATH := $(host_jdk_rt_jar) +endif + ifneq ($(LOCAL_IS_HOST_MODULE),true) ifeq ($(LOCAL_JAVA_LIBRARIES),) @@ -165,6 +172,7 @@ -templatedir $(PRIVATE_CUSTOM_TEMPLATE_DIR) / -templatedir $(PRIVATE_TEMPLATE_DIR) / $(PRIVATE_DROIDDOC_HTML_DIR) / + $(addprefix -bootclasspath ,$(PRIVATE_BOOTCLASSPATH)) / $(addprefix -classpath ,$(PRIVATE_CLASSPATH)) / -sourcepath $(PRIVATE_SOURCE_PATH)$(addprefix :,$(PRIVATE_CLASSPATH)) / -d $(PRIVATE_OUT_DIR) / 

 

更多相关文章

  1. android VersionCode 与VersionName
  2. Android(安卓)Ant编译时候进行混淆
  3. 自动打开USB调试
  4. android和js互相调用的问题
  5. Android(安卓)动态生成布局 (多层嵌套)
  6. Android两种不同的方法去实现图像的放大与缩小(很有帮助)
  7. Android调用微信登陆、分享、支付(第二版本)
  8. Android使用代码实现左右半圆的按钮背景
  9. Android(安卓)OpenGL 学习笔记 --开始篇

随机推荐

  1. Android开发环境(入门)
  2. 2020-Android面试
  3. Android开发从Dagger2迁移至Kodein的感受
  4. Android(安卓)App开发基础篇—数据存储(S
  5. Android串口通信:串口读写实例
  6. Android(安卓)启动过程分析 (二)
  7. Android(安卓)Studio编码问题
  8. android:debuggable="false"
  9. Android(安卓)超简易Zxing框架 生成二维
  10. Android(安卓)TextView去掉paddingTop和p