Centos7编译openjdk8源码

Centos7编译openjdk8源码

 

 

 

转载补充:

https://www.jianshu.com/p/c0fa5f987ea0

openjdk源码地址:

http://hg.openjdk.java.net/jdk8/jdk8/file/1773f1fd0fac

 

说明

编译openjdk前提是你要先有一套jdk环境,依靠这套环境启动你的jdk的编译(我安装的是jdk6)。

 

安装依赖的启动jdk环境

 

jre

> sudo yum install java-1.8.0-openjdk

 

jdk

> sudo yum install java-1.8.0-openjdk-devel

> java -version
openjdk version "1.8.0_191"
OpenJDK Runtime Environment (build 1.8.0_191-b12)
OpenJDK 64-Bit Server VM (build 25.191-b12, mixed mode)
[root@izuf6ea4rfo45y44oj74jhz /]# javac -version
javac 1.8.0_191

 

编译openjdk

 

下载openjdk

hg是下载openjdk源码的工具

> yum install hg

> hg clone http://hg.openjdk.java.net/jdk8u/jdk8u openjdk8

> cd openjdk8

> sh get_source.sh  # 这个过程比较慢,不可急躁,下载过程很可能下载不全,多下几次即可

 

完整的目录需要有作者圈出来的模块

 

 

 

 

安装编译所需依赖插件

> yum install alsa-lib-devel cups-devel libX* gcc gcc-c++ freetype-devel libstdc++-static ant make

 

如果还缺少,在执行下一步configure操作时会提示,到时候安装在执行configure操作即可

> chmod +x configure  # 可执行权限
> ./configure --enable-debug # 比较漫长

 

下图为成功的结果:

 

# 编译
> make

 

编译成功如下:

 

进入openjdk8/build目录下,创建:

# 编写HelloWorld.java测试

public class HelloWorld {

        public static void main(String[] args) {
                System.out.println("HelloWorld openJDK");
        }
}
# 使用直接安装的jdk环境测试(我安装的是jdk6)
> javac HelloWorld.java
> java HelloWorld
HelloWorld openJDK

# 移除HelloWorld.class  (接下来,准备用我们自己编译的jdk测试)
> rm -rf HelloWorld.class
# 使用我们自己编译的openjdk测试,进入openjdk/build目录下

# 1、先编译,会生成HelloWorld.class文件
> ./linux-x86_64-normal-server-fastdebug/jdk/bin/javac HelloWorld.java       
# 2、执行
> ./linux-x86_64-normal-server-fastdebug/jdk/bin/java HelloWorld
HelloWorld openJDK

# 成功

 

 

posted @ 2020-08-09 14:26  刘呆哗  阅读(624)  评论(0编辑  收藏  举报