编译Android内核时遇到的jdk问题

编译Android内核时需要进行一些关于jdk的配置。记录备忘。

编译环境:ubuntu 12.04

1.编译Android内核需要的jdk版本是JDK SE 1.6。如果以前安装过其他版本的jdk,则需要先将其卸载:

#查看已安装的jdk
$ sudo dpkg --list jdk

可以列出已安装的jdk。然后卸载之:


#卸载jdk
$ sudo apt-get --purge remove <your jdk>

2.下载JDK SE 1.6。官网上的JDK SE 1.6版本都是rpm或rpm.bin格式的,在ubuntu下安装需要借助一个工具:alien


#安装jdk
sudo alien -i jdk-6u37-linux-amd64.rpm

3.配置环境变量。将如下内容加入到/etc/profile配置文件:

export JAVA_HOME=/usr/java/jdk1.6.0_37
export JRE_HOME=${JAVA_HOME}/jre
export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib
export PATH=${JAVA_HOME}/bin:$PATH

4.测试jdk。输入:

java -version

如果
出现错误提示

Error occurred during initialization of VM
java/lang/NoClassDefFoundError: java/lang/Object

这是因为lib/tools.ar和jre/lib/rt.jar没有被解压。执行如下命令进行解压:

cd java_home/lib
/usr/java/jdk1.6.0_37/bin/unpack200 tools.pack tools.jar
cd jre_home/lib
/usr/java/jdk1.6.0_37/bin/unpack200 rt.pack rt.jar


你可能感兴趣的:(Android开发)