Ubuntu13.04下编译open-jdk7

| 分类 Java  | 标签 JVM 

最近在读《深入理解Java虚拟机》,第一章主要就是手动编译一个jdk。本文可能是史上最简编译jdk的方法。很多网上编译jdk的资料极度不靠谱。

编译环境:Ubuntu13.04 64位。

1. 下载openjdk7源代码

下载源代码有两种方式。

用Mercurial下载

Mercurial是一个轻量级分布式版本管理工具(类似git)。 安装方法。

然后按照以下命令下载源代码。

hg clone http://hg.openjdk.java.net/jdk7u/jdk7u6 YourOpenJDK cd YourOpenJDK sh ./get_source.sh

直接到官方下载

最好用官方最新的包,以避免各种之前出现的Bug。

2. 下载编译所需要的包

sudo aptitude build-dep openjdk-7

sudo aptitude install openjdk-7-jdk

没有aptitude命令,自行安装。

3. 编译

进入openjdk的目录,用命令

make sanity 检查是否在build前准备好环境。

编译脚本

建立sh脚本,注意脚本必须拥有可执行权限。编译脚本如下:

export LANG=C export ANT_HOME=/usr/share/ant export ALT_BOOTDIR=/usr/lib/jvm/java-7-openjdk-amd64 export DEBUG_NAME=debug export ALT_JDK_IMPORT_PATH=/usr/lib/jvm/java-7-openjdk-amd64 unset JAVA_HOME unset CLASS_PATH make ARCH_DATA_MODEL=64 BUILD_JAXWS=false BUILD_JAXP=false 4. 编译成功

经过漫长的编译,成功后会出现如下信息。

编译成功picture

在build目录下,有一个编译好的jdk。

jdk

5. 一些有用的资料
  1. Eclipse调试Hotspot

  2. 调试Hotspot

真爱生命,远离百度。

(完)


上一篇     下一篇