JetBrains發佈了旗艦產品IntelliJ IDEA的2018.3版本。這個版本提供了一系列新特性,包括對Java 12的支持、對Spring Boot的增強,和對多行TODO註釋的支持等等。
Java
IntelliJ IDEA 2018.3版將支持即將到來的Java 12。開發人員可以預覽原始字符串字面值(JEP 326),將多行字符串文字轉換爲原始字符串字面值,反之亦然,檢測冗餘的前引號或後引號(’),識別原始字符串字面值中的正則表達式,以及將字符串粘貼爲原始字符串字面值。
若要使用Java 12的編碼輔助功能,可點擊Project Structure > Project,將語言級別設置爲“12 (Preview) - Switch expression, raw string literals”。需要注意的是,Java 12還沒有發佈。
根據JCP開發的早期草案規範的實現僅用於測試和評估目的,與JCP的任何規範都不兼容。
現在IntelliJ IDEA可以在更復雜的情況下檢測副本,在diff視圖中顯示副本,使開發人員能夠並排比較它們。
這個版本的其他改進包括:
- 在後續的min 調用之前檢測到不必要的sorted 調用,並快速修復以刪除Java Stream API中冗餘的sorted 調用。
- 添加了一個名爲“條件被其他條件覆蓋”的檢查,它檢測被下一個條件覆蓋的不必要的條件,並提供一個快速修復程序來刪除這些冗餘條件。
- 檢測@SuppressWarning註釋、// noinspection行註釋或/** noinspection */ JavaDoc註釋的冗餘用法。
編輯器
IntelliJ IDEA 2018.3增加了多行TODO註釋支持;TODO工具窗口中高亮顯示和列出了每個TODO註釋行。
IntelliJ IDEA 2018.3增加了一個新的縮進狀態條,它顯示當前文件中的縮進大小,當文件與當前設置不匹配時,在縮進視圖中添加星號。
編輯器的其他改進包括:
- 創建範圍以防止來自特定文件和文件夾的代碼格式化。
- 編輯器配置文件現在有了語法高亮顯示和代碼補全。
JavaScript / Typescript
JavaScript和Typescript也做了一些改進。IntelliJ IDEA現在可以自動添加導入,既可以導入項目中定義的符號,也可以導入項目依賴項中的符號。只要包中包含被寫爲ES模塊的源代碼,或者包中有TypeScript定義文件,就可以這樣做。
開發人員現在可以調試節點了,使用Node.js 10.12或更高版本加上–experimental-worker標誌即可。此外,IntelliJ IDEA現在爲worker 線程API提供了代碼補全功能。
Angular支持、代碼補全和轉到變量定義,管道和異步管道也得到了改進,而且模板引用變量現在更準確了。據JetBrains介紹,Angular和AngularJS支持中已經修復了50多個已知問題。
Spring
IntelliJ IDEA 2018.3完全支持Spring Boot 2.1。用@DataSize標註的配置值將得到驗證,如果指定,將使用默認的@DataSizeUnit。
在使用@ConfigurationProperties時,會添加一個新的檢查來發現最常見的bug。例如,棄用的POJO屬性現在會相應地高亮顯示,以便更容易跟蹤配置中必要的更新。
Spring Initializr得到了一些改進;現在,當開發人員使用Spring Initializr創建項目時,IntelliJ IDEA建議安裝或啓用適當的插件,以確保對所選的所有技術都能提供支持。
對JPA和Spring數據支持的改進能使Kotlin開發人員從中獲益。現在IntelliJ IDEA在開發人員用Kotlin編寫Spring數據接口時能夠理解實體。
此外,IntelliJ IDEA還爲方法名提供了補全功能,併爲參數提供了快速修復功能。
Docker 和Kubernetes
Docker插件現在已經綁定到了IDE上。
對Helm資源文件的支持在Kubernetes插件中得到了改進,包括:
- 編碼輔助。
- Helm 模板結果差異的預覽,開發人員只需要從上下文菜單中選擇新的Kubernetes |Helm Template action即可。
- 可以使用新的“Helm Update Dependencies”操作了,這樣開發人員可以下載外部tgz依賴項並將它們顯示在項目樹中了。
更多信息和完整的變更內容可以在What’s New 頁面找到。
查看英文原文:IntelliJ IDEA 2018.3 Brings Support for the Upcoming Java 12, Spring Boot Enhancements and More