QCon北京开幕在即|与全球 140+ 顶尖工程师共同解构 AI 时代的技术浪潮 了解详情
写点什么

Java 的 JDK 已经可以无警告编译通过

  • 2015-02-24
  • 本文字数:524 字

    阅读完需:约 2 分钟

OpenJDK,Java 的开源参考实现(也是 Oracle JDK 的基础)已经达到了一个重要的里程碑。包含了类库代码的 jdk 仓库,在将要发布的 JDK 9 中已经消除了所有的编译警告,Joe Darcy 和其他一些人领导 Oracle 工程师们在这上面耕耘了数月,也就此画上完美句号,这其中也包含了一些来自社区的贡献。

Java 像其他编程语言,例如 C 一样,支持一种检查模式(linting mode),它可以对糟糕的代码样式和可能不安全的编码做法发出警告。包括的例子有,switch/case 语句中是否有 default 处理,以及对 Java 原始类型的使用等。虽然检查产生的警告看起来比较温和,但是 bug 就有可能隐藏在这些被标注出来的代码背后。消除警告可以暴露真正的问题,其中一些问题还隐藏得很深。

OpenJDK 团队解决这个问题的办法是,先消除一种类型的警告,然后再把这种警告设为致命错误(fatal error),这样以后带有这种警告的代码就无法提交到仓库中了。等到所有的警告类型都消除后,编译过程会打开-Xlint:all -Werror开关,这样编译 JDK 的时候,所有的警告都会变成致命错误。

最后,Darcy 写了一篇博文,在文中,他给那些也希望用这种方法清理自己项目中的编译警告的Java 开发者们提出了建议。

查看英文原文: Java’s JDK Repository Now Builds Warning-Free

2015-02-24 00:584669
用户头像

发布了 77 篇内容, 共 37.8 次阅读, 收获喜欢 26 次。

关注

评论

发布
暂无评论
发现更多内容

Go 语言学习路线来啦

roseduan

学习 Go 语言

缓存的世界Redis(一)

卢卡多多

redis 缓存 6月日更

Python——元组的使用

在即

6月日更

你应该知道的数仓安全

华为云开发者联盟

数据加密 数仓安全 透明加密 SQL函数加密

详解Vue八大生命周期钩子函数

华为云开发者联盟

Vue 对象 函数 Vue实例 八大生命周期

实时音视频开发理论必备:如何省流量?视频高度压缩背后的预测技术

JackJiang

音视频 即时通讯 IM 视频编解码

互联网就业系列文(一)

HZFEStudio

互联网 就业

文档代码同源

不脱发的程序猿

开发规范 文档代码同源

【译】JavaScript 代码整洁之道-概述篇

KooFE

JavaScript 大前端 6月日更 整洁代码

EMQ映云科技边缘计算里程碑—Kuiper加入LF Edge基金会

EMQ映云科技

开源 云端 边缘流式数据 emq LF Edge

Flink Metric

Alex🐒

flink 翻译 flink1.13

全新升级IoT Stack 2.0和度能2.0,百度持续加码为产业智能化安全护航

百度大脑

百度智能云

react源码解析12.状态更新流程

全栈潇晨

React

EasyRecovery用法进阶--高阶设置使用技巧

淋雨

数据恢复 EasyRecovery 文件恢复 硬盘恢复

ARTS 打卡第11周

steve_lee

网络安全逐渐成为程序员的必备技能

学神来啦

Linux 程序员 安全 渗透

Pandas高级教程之:Dataframe的重排和旋转

程序那些事

Python 数据分析 pandas 程序那些事

Apache Drill 1.19.0 发布集锦

MPP Apache Drill 联邦查询和分析

ONES CTO 冯斌 | 升级项目管理体系,加速金融行业数字化转型

万事ONES

项目管理 研发管理 数字经济 ONES

【LeetCode】山脉数组的峰顶索引Java题解

Albert

算法 LeetCode 6月日更

敏捷绩效管理三剑客:OKR 、KPI、CFR

CODING DevOps

DevOps OKR 敏捷绩效 绩效管理

你有一份Rx编程秘籍请签收

vivo互联网技术

响应式编程 大前端 函数编程 RXJS

浪潮云说丨云应用容灾:四大关键能力,护航业务连续性

云计算

云图说|华为云自研云数据库GaussDB NoSQL,兼容多款NoSQL接口的数据库服务

华为云开发者联盟

nosql Influxdb Cassandra mongo GaussDB NoSQL

[译] Android 的 Java 9,10,11,12 的支持

Antway

6月日更

ONES CTO 冯斌 | 大型软件研发团队如何实践高效项目管理?

万事ONES

团队管理 ONES Project 研发团队

推荐学Java——应该了解的前端内容

逆锋起笔

Java 大前端 后端 JAVA开发

并发王者课-黄金3:雨露均沾-不要让你的线程在竞争中被“饿死”

MetaThoughts

Java 多线程 并发 并发王者课

docker搭建Nginx和Tomcat负载均衡

叫我阿柒啊

nginx Docker 负载均衡

什么是Python中的套接字编程?

华为云开发者联盟

Python 编程 socket 网络 套接字

重启心智解锁,重新获得一份能力精进指南,面对不确定性的未来,我们可以和世界的变化做好友。

叶小鍵

Java的JDK已经可以无警告编译通过_Java_Ben Evans_InfoQ精选文章