Sun JDK bug 分析

weblogic10.3.6+jdk8,匹配不上Sun SDK直接安装出现报错,如何解决? 🏆本文收录于 《全栈Bug调优(实战版)》 专栏,该专栏专注于分享我在真实项目开发中遇到的各类疑难Bug及其深层成因,并系统提供高效、可复现的解决思路和实操方案。无论你是刚入行的新手开发者,还是拥有多年项目经验的资深工程师,本专栏都将为你提供一条系统化、高质量的问题排查与优化路径,助力你加速成长,攻克技术壁垒,迈向技术价值最大化与职业发展的更高峰🚀! 阅读详情
<script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js"> </script> 很多人都想知道 Sun JDK bug 分析数据,因为每一个开发工具/开发语言都有自己的长处和缺点,如果我们能够使用 Java 的长处,避开 Java 的缺点,则我们有可能写出好的程序,否则,我们不可能写出好的程序。这是一个浅显的道理,每一个程序员、系统分析员、项目经理、技术经理,都应该知道这个道理。   这篇文章的分析数据都来源于 Sun 网站上的公开数据。   JDK 1.4.2 的 bug 数据来自: http://java.sun.com/j2se/1.4.2/fixedbugs/fixedbugs.html 。   JDK 5.0 的 bug 数据来自: http://java.sun.com/j2se/1.5.0/fixedbugs/fixedbugs.html 。      更早版本的,比如 JDK 1.3,已经从 Sun 网站上被删除了。没有办法再进行分析了。   JDK 1.4.2 的 bug 数据饼图如下:  可以看出,前六位占据了超过半数的 bug: java/classes_awt    13.7% java/classes_swing   12.6% java/classes_2D     11.5% java/classes_net    6.3% java/classes_sound   4.1% java/classes_util    3.7% java/javadoc       3.7% java/classes_nio    3.3% javawebstart/other   3.3% java/compiler      3.0%   JDK 5.0 的 bug 数据饼图如下: 可以看出,前六位同样占据了超过半数的 bug: java/classes_swing    22.5% java/classes_2D      9.5% java/classes_awt     7.6% java/classes_lang     4.6% java/compiler       4.1% java/classes_sound    3.3% java/classes_util_i18n  2.5% java/classes_util     2.5% java/javadoc       2.4% java/classes_net     2.2%   在这两个版本中,前三位都是 Swing、AWT、2D,这说明了在图形界面(专业术语为 GUI)设计中,Sun 的软件工程师的水平仍差强人意,这可以解释。Sun 所开发的软件产品中,主要面向小型机服务器市场。这些市场对于软件的界面要求不高,基本上都是传统的 Unix service 程序。也许 Sun 的强项并不在 GUI 方面。GUI bug 在两个版本的百分比分别是 37.8 和 39.6%,都超过三分之一。      相比较其他流行的开发语言,比如 .Net,或者即使是十年前的老版本 Visual Studio,或者 Borland 的 Delphi/CBuilder 中, GUI bug 所占的分量也没有这么高。   这说明了尽管 Sun 不停地宣传 Swing 类是多么的设计巧妙,尽管每个版本的 JDK 文档中 Sun 都在新版本的新特点中提到 Java Swing/AWT/2D,我们仍然应该避免使用 Java Swing/AWT/2D。很多第一线的程序员都能明确了解使用 Java GUI 编程是一个非常糟糕的想法,但是在中国国内,还是有很多系统设计师和项目经理有这个糟糕的想法。   JDK 1.4.2 中排名第四的是 java/classes_net,在 JDK 5.0 中则是第十名。考虑到 JDK 1.4.2 相对于以前的版本,增加或者增强了 IPv6、HTTP Digest Authentication、Unconnected/Unbound Socket Support、Connected UDP Socket Support、FTP Protocol Handler、JNDI DNS SP Support in InetAddress、URLEncoder and URLDecoder Improvements、TCP Out-of-Band Data、Full V5 (RFC 1928) & V4 TCP support。由于这是一个比较大的动作, bug 比较多也属于正常范围。   两个版本中,java/classes_sound 都出现在前十,并且排名都比较中前,这说明了 Sun 在多媒体方面的技术也不尽如人意。   让我们失望的是,java/classes_util 在 JDK 1.4.2 和 5.0 中都出现在前十中。这个包的类库使用得比较普遍,每个项目经理或者产品经理都应该派专人去查一查,自己的软件中是否在 java/classes_util 的使用上,有没有避开以上 bug。   在 JDK 1.4.2 中 bug 出现在前十名的 java/classes_nio 没有出现在 JDK 5.0 中,这是一个好消息。终于有一个 Java 包可以放心使用了。   比较让我们哭笑不得是,在两个版本的前十名 bug 中,java/javadoc 和 java/compiler 都出现了。这个怎么说呢,实在是很不应该。java/javadoc 有 bug 好像对于国内的 Java 软件开发来说没有太大的影响,因为重视使用 javadoc 的并不多。至于 java/compiler ,因为 Java 编译器是 C 写的,大概是编译器很难写吧,所以会难免有些 bug。但是编译器是基本上每个 Java 程序员都用的,而且 Sun 的 Java compiler 似乎也是所有 Java compiler 中使用者最多的,Sun 需要继续努力。   JDK 5.0 中,java/compiler bug 所占百分比比 JDK 1.4.2 中提高了好几个名次,很不好的一个趋势。Sun 现在将 Java 开源,希望有助于提高这一部分的软件质量。   以上的 bug 分析,希望对大家有所帮助。
从XSA到Linux应用:Petalinux与Vitis的嵌入式开发全流程解析 本文详细解析了从XSA文件到Linux应用的嵌入式开发全流程,重点介绍了Petalinux与Vitis工具链的使用技巧和实战经验。通过XSA硬件描述、Petalinux工程搭建、系统镜像优化及Vitis开发配置等关键步骤,帮助开发者高效完成ZYNQ平台开发,解决常见问题并提升开发效率。 阅读详情

相关推荐

告别反复格式化!用Ventoy制作2025年终极启动盘,Windows/Linux/macOS一网打尽

本文详细介绍了如何使用Ventoy制作2025年终极多系统启动盘,彻底告别反复格式化U盘的烦恼。Ventoy通过创新的引导加载器架构,允许用户在一个U盘内同时存放并直接启动Windows、Linux、macOS等多种系统镜像和WePE等维护工具,实现真正的非破坏性管理和极高的U盘利用率。文章涵盖从安装配置、镜像库构建到安全启动设置等全流程实战指南。

weixin_29280219的博客 242

太极限了,JDK的这个BUG都能被我踩到

hello,大家好呀,我是小楼。 之前遇到个文件监听变更的问题,刚好这周末有空研究了一番,整理出来分享给大家。 从一次故障说起 我们还是从故障说起,这样更加贴近实际,也能让大家更快速理解背景。 有一个下发配置的服务,这个配置服务的实现有点特殊,服务端下发配置到各个服务的本地文件,当然中间经过了一个agent,如果没有agent也就无法写本地文件,然后由client端的程序监听这个配置文件,一旦文件有变更,就重新加载配置,画个架构图大概是这样: 今天的重点是文件的变更该如何监听(watch),我们当时的实现

捉虫大师 681

结构设计3D拆件与骨架模型构建实战:基于Creo 8.0的5个高效建模技巧

本文详细解析了基于Creo 8.0的结构设计3D拆件与骨架模型构建实战技巧,涵盖5个高效建模方法,包括参数化驱动、曲面分割、多实体协同设计等。通过骨架模型的智能应用,设计效率可提升30%以上,特别适合复杂产品的结构设计。文章还提供了TWS耳机充电仓等实战案例,帮助工程师快速掌握工业设计中的核心建模技术。

weixin_30000735的博客 575

你连存活到JDK8中著名的Bug都不知道,你怎么敢跳槽涨薪的?

在笔者研究 JDK 源码时,注意到在CopyOnWriteArrayList和ArrayList的构造器中都出现了如下 bug 字样

软件测试技术分享官 474

数学文化赏析MOOC笔记【2023】

深圳大学UOOC课程《数学文化赏析》课程笔记

simplenthpower的博客 1753

基于Arduino与脑电模块的意念控制LED灯环实现

脑机接口(BCI)技术通过采集和处理脑电信号,实现人脑与外部设备的直接交互。其核心原理是利用传感器捕捉大脑活动产生的微弱电信号,经过放大、滤波和特征提取,转换为可识别的指令。这项技术在医疗康复、神经反馈训练和人机交互等领域具有重要价值。本文聚焦于一个具体的工程实践:使用消费级NeuroSky TGAM模块采集专注度与放松度数据,通过Arduino平台解析信号,并驱动WS2812B LED灯环实现实时可视化反馈。项目涵盖了硬件选型、电路搭建、数据解析和光效映射等关键环节,为脑机接口入门和嵌入式开发提供了完整的

weixin_28721917的博客 284

惊呆了,JDK中这些常用方法尽然存在Bug?

你知道的越多,不知道的就越多,业余的像一棵小草!你来,我们一起精进!你不来,我和你的竞争对手一起精进!编辑:业余草cnblogs.com/wyq178/p/13520745.html推荐:...

xmt1139057136的专栏 823

STM32/GD32以太网开发避坑指南:ZLG EPORTM模块调试实战(含YT8512H配置)

本文针对STM32/GD32平台使用ZLG EPORTM模块进行以太网开发时遇到的常见问题,提供了详细的调试实战指南。重点解析了从传统PHY驱动迁移到YT8512H芯片的核心步骤,包括软件复位延时、RMII时钟配置等关键陷阱,并分享了LWIP集成与稳定性验证的实用经验,帮助开发者高效避坑。

rice5的博客 1164

JDK并发修改异常的一个“BUG“

很多电商公司早期的架构都是基于PHP,所以我身边会有很多很厉害的PHP老哥,但现在都在写Java。问:运行上面的代码会发生什么?

smart_an的专栏 997

lisflood-fp(一)从源码到可执行文件:Windows下的Cmake实战编译指南

本文详细介绍了在Windows环境下使用Cmake工具编译lisflood-fp水文模型源码生成可执行文件的全过程。从开发环境配置、源码获取到实战编译,逐步指导如何解决常见错误并处理运行时依赖,最终生成可用的exe文件。特别适合水文专业研究者和工程师学习参考。

weixin_30555125的博客 481

保姆级教程:在LKD3588开发板上为RK3588添加SC2210摄像头驱动(含完整DTS配置)

本文提供了一份详细的教程,指导如何在LKD3588开发板上为RK3588处理器添加SC2210摄像头驱动,包括完整的DTS配置和内核编译步骤。教程涵盖了环境准备、驱动文件添加、DTS配置详解、内核编译与烧录、驱动测试以及常见问题排查,帮助开发者快速实现SC2210传感器在RK3588平台上的集成与优化。

weixin_42641741的博客 480

惊呆了,JDK中这些常用方法也有Bug?

在面试前我整理归纳了一些面试学习资料,文中结合我的朋友同学面试美团滴滴这类大厂的资料及案例由于篇幅限制,文档的详解资料太全面,细节内容太多,所以只把部分知识点截图出来粗略的介绍,每个小节点里面都有更细化的内容!大家看完有什么不懂的可以在下方留言讨论也可以关注。《一线大厂Java面试题解析+核心总结学习笔记+最新讲解视频+实战项目源码》点击传送门即可获取!由于篇幅限制,文档的详解资料太全面,细节内容太多,所以只把部分知识点截图出来粗略的介绍,每个小节点里面都有更细化的内容!

2401_84049040的博客 847

【RT-DETR涨点改进】独家注意力改进篇 | 手把手教你在RT-DETR上使用LSKAttention大核注意力机制(助力目标检测极限涨点)含多种创新改进点

本文提出了一种LSKA大核注意力机制优化RT-DETR模型的方法。LSKA通过将2D深度卷积核分解为级联的1D水平和垂直核,显著降低了计算复杂度和内存占用,尤其在处理大卷积核时优势明显。该模块在图像分类、目标检测等视觉任务中保持与LKA相当的性能,同时展现出更强的鲁棒性。文章详细介绍了LSKA的网络结构、核心代码实现方法,并提供了多种RT-DETR改进方案,包括rtdetr-r18-LSKA、rtdetr-l-LSKA等7种yaml配置文件,通过实验验证了该方法的有效性。

Ai缝合怪、助力小伙伴高效发论文 253

打算写一个文章对 Sun JDK 的 bug 进行分析

最近几天,花了不少精力在查一个导致服务器重新启动的 bug. 查了半天是 JDK 的 bug,不是应用程序的 bug. 很希望将已知的  Sun JDK bug 进行整理,在以后的项目中能够尽早避免。初步打算对 JDK 1.3.1, JDK.1.4.2 两个版本的 bug 进行分析。更老的版本现在用的人已经比较少了。更新的版本因为使用的人还不够多,也许有很多 bug 尚没有被发现,也没有什么意义。

jacklondon的专栏 1618

最新的sdio 4.0 spec 协议标准 带书签 高清完整PDF版

Part-E1-SDIO-Specification-Ver4.00-Final-120220.pdf:最新的sdio 4.0 spec 协议标准 带书签 高清完整PDF版,包括SDIO 接口的外设,SDIO 接口官方协议等。

老版QQ原生表情gif动态

这是老版的QQ表情,不过全是动态的的,Windows照片查看器是不会动的,可以右击用浏览器打开查看,再说一遍是老版的,只是分享给宁愿用老版也要动态的人。

Java线程: New他就Start他 (遇见JDK1.4.2_04以前的一个bug)

我们的系统有OutOfMemory现象, Liu同学最近又发现了一个原因:Sun JDK 1.4.2_04版本(含以前)的bug, 我们系统另一个OOM的原因参见:Derby: Out Of Memory &amp; Update 对与sun的这个bug我以前一无所知, 有必要记录下来, 学习一下.   Bug现象: 一个线程如果只是new, 而没有start(), 那么该线程不会被...

SAP => Simplify Anything Possible 144

SIMATIC S7-1200, S7-1500 PID 控制[手册]

SIMATIC S7-1200, S7-1500 PID 控制[手册]

【案例12】NC65一直在登录页面转圈,耗时30min以上

问题现象 NC登录一直在转圈,最短需要30多分钟才能进去。 问题分析 通过nmc查看,发现线程被锁住 生成javacore分析,kill -3 <pid>失效。 所以用jstack -l <pid> 生成线程信息分析。 可以发现大部分线程都被0x00000000d013be30 锁住了 找到具体线程,发现为线程Thread-64 通过工具分析 Thread-64 一直有堆栈比较异常 at sun.security.provider.Na..

Z.Virgil的博客 3654

大中型超市收银系统(可直接运行)

光步前台收银系统系统功能:商品销售、商品退货、挂单、收银员权限、会员销售、单品取消、整单取消、商品查询、脱机销售、脱机数据上传,基本资料下载,开钱箱、小票打印、收款结算,支持多币种付款方式(现金、储值卡、礼券、微信等),支持多种促销。运行环境:.net 4.0登陆信息用户名:1001 密码:123456内置商品信息,商品编码可输入00001000 - 00010000,测试效果相关功能键F5 结算 F9挂单 F11商品查询 F8退货 Insert单品取消 Del整单取消 F12开钱箱F2 会员 Ctrl+Z退出系统 Home 锁屏 相关源码待公开

java应用crash案例

最近,应用总会时不时crash(jdk6u24),hs_err_pid.log截取如下: Current thread (0x0000000040124800): GCTaskThread [stack: 0x0000000000000000,0x0000000000000000] [id=23997] 出错的时候运行的是GCTaskThread,说明是GC的时候出错的,执行的是libjvm...

知识仓库 177

信用风险建模的数据集构建:从数据源到特征工程的完整指南

在信用风险建模中,模型算法并非决定因素,数据质量与特征工程才是区分度上限的关键。从逻辑回归到XGBoost,数学原理易于掌握,但样本窗口选取、目标变量定义、WOE分箱及IV筛选等环节,往往直接影响风险评估的稳定性。通过合理设计观察期与表现期、构建趋势与稳定性特征,并按时间顺序划分数据集,可有效避免信息泄漏与分布漂移。这些方法广泛应用于信贷评分卡、风控策略优化等场景,是提升模型可解释性与上线效果的基础。本文围绕数据集搭建全过程,梳理从数据源评估到特征筛选的实践路径。

weixin_33892359的博客 214

估算jvm进程的最大线程数

这个异常问题本质原因是我们创建了太多的线程,而能创建的线程数是有限制的,导致了异常的发生。,能创建的线程越少,越容易发生。

张紫娃的博客 1232

JDK1.5中LinkedBlockingQueue的bug

我写的平台,为每个模块提供了一个父类,当中有一个消息队列是用LinkedBlockingQueue实现的,存在很严重的内存泄露。分析代码,发现,调用最为频繁的是这一段代码:                while (true) {                        ..................                        msg = (TaskMsg) m_

Stone的专栏 4135

Sun JDK 1.5 annotation compile error

Sun JDK 1.5 compiler BUG: JDK-6302954 : Inference fails for type variable return constraint http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=6302954 编译报错如下: type parameters of &lt;T&gt;T cannot ...

anson2003的专栏 207

JDK引发的bug(sun.awt.FontConfiguration.getVersion NullPointerException)

1.背景阐述 项目开发中有个数据导出的功能,采用的是异步队列来处理的。 开发使用的jdk为 本地测试完全没有问题,部署到线上,一直会报下面日志的错误信息。 [nio-8080-exec-6] c.c.t.service.impl.TemplateServiceImpl : >>>开始向【导出数据队列】投递消息<<< 2020...

吾本樵夫 的技术专栏 7491

有关import sun.audio.AudioPlayer(或者其它文件)的问题

今天白天在工作中使用Eclipse编译代码的时候,在播放声音的代码中报了这么一个错误   import sun.audio.AudioPlayer;   import sun.audio.AudioStream;   上面这两句都报“Access restriction: The type AudioPlayer is not accessible due to restrictio

咫尺天涯的专栏 4816

sun 和 Oracle 的jdk,Oracle/Sun JDK与OpenJDK的区别和联系

在Oracle参与过HotSpot VM的研发。这个我有发言权。Oracle JDK与OpenJDK里的JVM都是HotSpot VM。从源码层面说,两者基本上是同一个东西。从JDK7开始,Oracle JDK里的HotSpot VM,在研发的时候其实就是用放在http://openjdk.java.net上OpenJDK的Mercurial代码库。也就是说跟大家从外部能实时看到的OpenJDK用...

weixin_42116681的博客 442
上一篇: JSP像乌云般挡住了JSF的光芒
下一篇: JRuby:使Java和Ruby成为一家人
java169
博客等级 码龄19年 27粉丝 2568原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值