Java的JDK已經可以無警告編譯通過

jopen 9年前發布 | 8K 次閱讀 Java

英文原文:Java's JDK Repository Now Builds Warning-Free

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 開發者們提出了建議。

來自: InfoQ

 本文由用戶 jopen 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
 轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
 本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!