写点什么

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:584690
用户头像

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

关注

评论

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

架构师week12心得

Geek_xq

android进阶之光!还有人不知道什么是AndroidX的吗?通用流行框架大全

欢喜学安卓

android 程序员 面试 移动开发

Elasticsearch Search API 基础语法

escray

elastic 七日更 死磕Elasticsearch 60天通过Elastic认证考试 2月春节不断更

万字长文:解读区块链7类共识算法

华为云开发者联盟

区块链 公有链 拜占庭容错 共识算法 公式算法

对DevOps的九大误解,是时候纠正了!

禅道项目管理

开源 DevOps 敏捷 自动化 持续交付

2021金三银四想进字节大厂必看:LeetCode算法收割机+算法刷题宝典

比伯

Java 编程 架构 面试 算法

架构师week12作业

Geek_xq

Hive HMS Canary 时间较长异常分析

kwang

大数据 hadoop hive

数据中心决策如何快人一步?一块大屏轻松实现3D数据可视化

一只数据鲸鱼

物联网 数据中心 数据可视化 IDC 机房管理

Kafka.01 - 简介

insight

kafka 2月春节不断更

翻译:《实用的Python编程》01_07_Functions

codists

Python 人工智能 后端 数据结构与算法 函数

了解操作系统的那些事儿,从这篇文章开始

飞天小牛肉

Java 程序员 面试 操作系统 2月春节不断更

地表建筑物识别Dayo1

IT蜗壳-Tango

七日更 2月春节不断更

CoralCache:一个提高微服务可用性的中间件

华为云开发者联盟

数据库 微服务 中间件 内存 CoralCache

诊所数字化:就诊流程标准化和产品SOP设计

boshi

数字化转型 医疗 七日更

DIY一款4路USB转TTL串口调试模块

不脱发的程序猿

DIY 电路设计 硬件设计 USB电路 USB转TTL

15. Python 程序运行速度如何提高十倍?第一遍滚雪球学 Python 收工

梦想橡皮擦

Python 2月春节不断更

开源数据库管理系统现在比商业产品更受欢迎

PostgreSQLChina

数据库 postgresql 软件 开源社区

最新金三银四阿里巴巴内部Java架构师面试突击面试题手册,面试前必看

Java架构追梦

Java 阿里巴巴 架构 面试 金三银四

android开发工程师需要学什么?360°深入了解Flutter,这原因我服了

欢喜学安卓

android 程序员 面试 移动开发

TCP 协议灵魂问题,巩固你的网路底层基础

日记 2021年2月19日(周五)

Changing Lin

2月春节不断更

竞猜商城系统软件制作

v16629866266

【LeetCode】最大连续1的个数三Java题解

Albert

算法 LeetCode 2月春节不断更

一文搞懂TCP的三次握手和四次挥手

不脱发的程序猿

三次握手 四次挥手 TCP/IP 网络通信协议 二月春节不断更

LeetCode题解:1143. 最长公共子序列,动态规划,JavaScript,详细注释

Lee Chen

算法 大前端 LeetCode

前端学习总结,经验分享,项目经验分享过程

我是哪吒

学习 程序员 Vue 大前端 2月春节不断更

【STM32】ST-LINK下载器下载后需复位,程序才运行的问题

AXYZdong

硬件 stm32 2月春节不断更

技术秘籍 | 如何简单优雅的适配textview行间距?

百度开发者中心

大前端 TextView

Elasticsearch Query DSL 概述

escray

elastic 七日更 死磕Elasticsearch 60天通过Elastic认证考试 2月春节不断更

一、MongoDB简介

Kylin

数据库 mongodb 学习 七日更 二月春节不断更

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