巫雪艷 发表于 2025-6-2 22:03:27

没几个人需要了解的JDK知识,我却花了3天时间研究

目前国内发布自己JDK版本的几家公司:
腾讯和阿里是因为有Java应用和云业务,所以在优化发布自己的版本
华为也是因为Java应用和云业务,不过因为还有服务器业务,所以还有Java课题的跑分需求,如SPECpower和SPECjbb跑分高代表自己服务器性能好
一些CPU厂,如龙芯,由于自己的指令集与x86这些不同,所以需要在JDK上适配自家的指令集架构,Java应用程序需要它们自己发布的JDK版本才能在龙芯CPU上跑
所以发布JDK版本的公司少,可能知道如何发布版本的人就更少了吧,应该也就是10多个人吧。
大家如果用过JDK,可能都执行这java -version吧,以bisheng jdk执行的信息为例,如下:
 
假设我们以如下命令编译JDK:
bash ./configure--with-debug-level=release
make all编译出来的信息如下:

领导要求格式与bisheng的差不多,默认编译出来的和bisheng jdk的差别太大。首先是带了许多internal字样,还有我的名称都需要去掉,另外要打上我们公司的名字。
使用 bash ./configure --help 命令看configure有啥配置选项, 如下:
--with-milestone      Set milestone value for build
--with-update-version   Set update version value for build
--with-user-release-suffix
                        Add a custom string to the version string if build
                        number isn't set.
--with-build-number   Set build number value for build  经过探索后,发现这几个编译选项指定的内容如下图所示。

我们想将1.8.0版本也替换为自己规划好的版本,不过没发现相关的参数。另外这个 internal 字符串总是没办法去掉,对--with-milestone字段给了如下值都不行:
--with-milestone=
--with-milestone=""
--with-milestone=" "后来偶尔一次指定 --with-update-version 和 --with-build-number 后,给 --with-milestone随便指定了一个值,居然就没有internal了,真是莫名其妙。
对于版本号和相关JDK的公司名称指定最后只能是脚本开发了,通过添加configure的配置参数来解决。这个脚本也是巨复杂,下了一些功夫才整好。
将图片上传到AI后,问了一下如何配置JDK8的configure参数,使得编译出来的JDK版本运行java -version命令后如图所示(上传BiSheng  JDK的版本信息图),给了一些命令,不过不能用,有些是JDK17的命令,好吧!
更多文章可访问:JDK源码剖析网 
 
 
 
 
来源:程序园用户自行投稿发布,如果侵权,请联系站长删除
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!

类饲冰 发表于 2025-11-4 09:14:18

这个好,看起来很实用

荡俊屯 发表于 2025-11-27 16:44:42

谢谢分享,辛苦了

拍棹 发表于 2025-12-24 18:10:20

这个好,看起来很实用

馏栩梓 发表于 2025-12-28 19:23:05

过来提前占个楼

蔓好 发表于 2026-1-13 18:12:02

谢谢分享,试用一下

梳踟希 发表于 2026-1-13 20:12:35

懂技术并乐意极积无私分享的人越来越少。珍惜

宛蛲 发表于 2026-1-14 22:19:01

谢谢分享,试用一下

奸轲嫣 发表于 2026-1-17 20:42:07

yyds。多谢分享

袋岖荤 发表于 2026-1-18 21:43:21

谢谢楼主提供!

搁胱 发表于 2026-1-18 23:25:40

新版吗?好像是停更了吧。

瞿佳悦 发表于 2026-1-19 00:17:40

谢谢分享,试用一下

能氐吨 发表于 2026-1-20 10:34:13

谢谢楼主提供!

郗燕岚 发表于 2026-1-21 02:41:07

鼓励转贴优秀软件安全工具和文档!

官厌 发表于 2026-1-22 16:11:43

用心讨论,共获提升!

蓬庄静 发表于 2026-1-26 04:01:12

这个有用。

吕颐然 发表于 2026-1-26 11:20:59

前排留名,哈哈哈

涅牵 发表于 2026-1-28 02:33:51

感谢分享,下载保存了,貌似很强大

尹疋 发表于 2026-1-30 05:51:51

东西不错很实用谢谢分享

凉砧掌 发表于 2026-2-6 06:34:22

感谢,下载保存了
页: [1] 2
查看完整版本: 没几个人需要了解的JDK知识,我却花了3天时间研究