有沒有辦法在IntelliJ IDEA中禁用Java 5和6的自動裝箱功能,以避免開發人員在IDE中使用此功能?在IntelliJ IDEA中禁用Java的自動裝箱
3
A
回答
11
我不認爲你可以徹底禁用自動裝箱,同時保持目標編譯版本 - 這是特定的Java版本的功能。
什麼可以做在IntelliJ是將自動裝箱的檢查水平更改爲「錯誤」。要做到這一點:
- 轉到設置>檢查,並在搜索欄中鍵入「拳擊」。
- 點擊「自動裝箱」。
- 將嚴重性設置爲「錯誤」。這將導致檢查測試報告任何發生的自動裝箱錯誤。你也應該爲自動拆箱做同樣的事情。
再往下行了,你可以添加哪些測試代碼(PMD,FindBugs的,的Cobertura,等人),這將構建失敗時運行代碼檢查,如果有什麼是自動裝箱或自動拆箱。
3
如果不將Java變成「不是Java」的形式,你真的不能禁用自動裝箱功能;但是,您可以減少一些最糟糕的自動裝箱問題的影響。
FindBugs,一個代碼分析器,有一些特定的自動裝箱規則,以避免自動裝箱變得相當成問題的情況。
它們都開始與 「BX:」 標識符:
- BX:原始值是盒裝然後立即裝箱 (BX_BOXING_IMMEDIATELY_UNBOXED)
- BX:原始值是盒裝然後裝箱以執行原始 脅迫(BX_BOXING_IMMEDIATELY_UNBOXED_TO_PERFORM_COERCION)
- BX:盒裝值是裝箱,然後立即reboxed (BX_UNBOXING_IMMEDIATELY_REBOXED)
- Bx:方法分配一個盒裝圖元來調用toString (DM_BOXED_PRIMITIVE_TOSTRING)
- Bx:方法調用低效的浮點數構造函數; 改爲使用static valueOf(DM_FP_NUMBER_CTOR)
- Bx:方法調用低效的Number構造函數;使用靜態 的valueOf代替(DM_NUMBER_CTOR)
您可以將Findbug報告集成到您的構建,並根據您使用的構建系統上,甚至有構建抱怨或失敗是由FindBugs的發現問題的存在。
相關問題
- 1. 如何在IntelliJ IDEA中自動禁用Maven自動導入?
- 2. Java自動裝箱
- 3. 如何禁用的IntelliJ IDEA
- 4. Java手動裝箱VS自動裝箱的原始數字
- 5. 如何在IntelliJ IDEA中禁用三擊?
- 6. 如何在IntelliJ Idea中禁用幫助?
- 7. Java的自動裝箱/拆箱wierdness
- 8. 的IntelliJ IDEA:禁用自動提交的合併
- 9. Java中的自動裝箱問題
- 10. Intellij Idea自動替換
- 11. Java。 IntelliJ IDEA hotswap
- 12. IntelliJ IDEA中的自動滾屏
- 13. IntelliJ IDEA中的自動錯誤檢測
- 14. 自動更新Intellij IDEA中的JAR
- 15. Intellij IDEA自動關閉HTML標籤,如何禁用它?
- 16. 在IntelliJ Idea中從Java調用Clojure?
- 17. 無法啓動安裝的IntelliJ IDEA
- 18. Intellij IDEA自定義自動完成
- 19. 在Intellij IDEA項目中安裝Play Salat
- 20. 如何在IntelliJ Idea中安裝Sikuli?
- 21. IntelliJ IDEA的顯示Javadoc自動
- 22. Intellij-idea:字母鍵的自動重複
- 23. 在IntelliJ IDEA的
- 24. 在IntelliJ IDEA的
- 25. 在IntelliJ IDEA的
- 26. 使用對象在java中自動裝箱拆箱使用對象
- 27. 禁用撇號t空格Intellij IDEA
- 28. 安裝JDK和IntelliJ Idea
- 29. 在IntelliJ IDEA中使用JTable
- 30. 如何在IntelliJ IDEA中練習Java?
出於興趣你爲什麼要這樣做? – RNJ 2013-04-04 18:28:12
@RNJ我打賭答案是:因爲它不是高性能的。 – Ingo 2013-04-04 18:29:49
不是我知道是否。它內置於JDK中,並且不可配置。 – duffymo 2013-04-04 18:31:46