天天看點

IDEA 2022.3 釋出:新UI、新配置同步、Java19支援、多項優化來了

作者:程式猿阿嘴

出品 | OSC開源社群(ID:oschina2013)

IntelliJ IDEA 2022.3 正式釋出,在新版本中,開發者可以通過設定切換到新 UI,即可預覽新的 IDE 外觀。此版本引入了一個新的 Settings Sync(設定同步)解決方案,用于同步和備份自定義使用者設定。此外,新版本的 IDE 還具有以下多項其他改進和更新。

主要更新

IDEA 2022.3 釋出:新UI、新配置同步、Java19支援、多項優化來了

通過設定使用新 IntelliJ IDEA UI

在 IntelliJ IDEA 2022.3 中,您可以切換到新 UI 并預覽 IDE 完全重做的外觀,新外觀幹淨、現代且功能強大。勾選 Settings/Preferences | Appearance & Behavior(設定 / 偏好設定 | 外觀與行為)中的 New UI preview(新 UI 預覽)框,在項目中嘗試一下。

IDEA 2022.3 釋出:新UI、新配置同步、Java19支援、多項優化來了

新的 Settings Sync(設定同步)解決方案

新的 Settings Sync(設定同步)插件現在可用于所有基于 IntelliJ 的 IDE(Rider 除外),包括免費版和付費版。新的解決方案能夠同步來自平台、捆綁插件和一些第三方插件的大部分可共享設定。請注意,我們将停止支援舊的 IDE Settings Sync(IDE 設定同步)插件并取消捆綁 Settings Repository(設定倉庫)。

IDEA 2022.3 釋出:新UI、新配置同步、Java19支援、多項優化來了

處理 WSL 2 中的項目的新方式(Ultimate)

IntelliJ IDEA Ultimate 2022.3 帶來了處理在 WSL 2 檔案系統中運作的項目的替代方式。IDE 後端将直接在 WSL 2 中啟動,而不是在 Windows 上運作完整的 IDE。然後,您可以像在 IntelliJ IDEA 中使用遠端開發時連接配接到遠端機器一樣輕松連接配接到它。處理 WSL 2 中的項目時,這種安排可以提供更好的 IDE 性能。

IDEA 2022.3 釋出:新UI、新配置同步、Java19支援、多項優化來了

适用于 Spring Bean 自動裝配和 OpenAPI 架構生成的新操作(Ultimate)

使用 IntelliJ IDEA Ultimate 2022.3,您現在可以在需要的地方輕松自動裝配 Spring Bean。這項新操作适用于 Spring、Micronaut 和 Jakarta EE CDI。此外,我們還增強了使用 OpenAPI 規範記錄 Web API 的使用者體驗,現在可以立即為 Spring 控制器或 JAX-RS 資源生成 OpenAPI 定義。

IDEA 2022.3 釋出:新UI、新配置同步、Java19支援、多項優化來了

Redis 支援(Ultimate)

在 IntelliJ IDEA Ultimate 2022.3 中,我們實作了備受期待的對 Redis 的支援。您現在可以連接配接到 Redis Single Instance,在資料檢視器中探索鍵值,借助智能編碼輔助編寫和執行 Redis 查詢等。

使用者體驗

IDEA 2022.3 釋出:新UI、新配置同步、Java19支援、多項優化來了

将工具視窗停靠到浮動編輯器頁籤的選項

為了讓您可以更輕松地安排工作空間并在多個顯示器上與 IntelliJ IDEA 互動,我們實作了将工具視窗拖出主視窗并将其停靠到浮動編輯器頁籤的選項。

IDEA 2022.3 釋出:新UI、新配置同步、Java19支援、多項優化來了

意圖操作預覽預設啟用

在 IntelliJ IDEA 2022.3 中,意圖操作的預覽功能現在預設開啟,讓您可以立即檢視應用 IDE 建議後代碼将如何變化。打開可用意圖操作清單并将滑鼠懸停在不同選項上時會顯示預覽。您可以在意圖操作清單打開時按 F1 禁用預覽功能,或者在 Settings/Preferences | Editor | General | Appearance(設定 / 偏好設定 | 編輯器 | 正常 | 外觀)中管理。

IDEA 2022.3 釋出:新UI、新配置同步、Java19支援、多項優化來了
IDEA 2022.3 釋出:新UI、新配置同步、Java19支援、多項優化來了

改進了 Search Everywhere(随處搜尋)結果的使用者體驗

我們微調了 Search Everywhere(随處搜尋)結果清單背後的算法,使其行為更可預測,使搜尋的元素的選擇更加準确。現在,開始輸入查詢時,IDE 會當機出現的第一個搜尋結果,并且不會在找到更多選項時對其重新排序。此外,機器學習排名現在對 Files(檔案)頁籤預設啟用,這樣可以提高結果的準确性并縮短搜尋會話。

IDEA 2022.3 釋出:新UI、新配置同步、Java19支援、多項優化來了

Find Usages(查找用法)結果中的相似用法叢集

Find Usages(查找用法)現在提供有關代碼元素如何在項目中使用的更深入資訊。借助叢集算法,IDE 現在可以分析搜尋結果,檢測最常見的用法模式,并根據結構相似性将所有找到的用法分類。這些用法叢集顯示在 Find Usages(查找使用)工具視窗的 Preview(預覽)頁籤中。

IDEA 2022.3 釋出:新UI、新配置同步、Java19支援、多項優化來了

改進了 Tips of the Day(每日小技巧)

我們對 Tips of the Day(每日小技巧)的外觀和行為做出了多項更改,使其更實用且更易了解。我們更新了對話框的設計,為每個小技巧添加了标題以指定描述的 IDE 區域,并實作了技巧評分功能以收集回報。我們還微調了确定顯示哪些提示的算法,讓您可以看到與 IDE 體驗和正在處理的項目最相關的提示。

IDEA 2022.3 釋出:新UI、新配置同步、Java19支援、多項優化來了

改進了 Bookmarks(書簽)

我們為 Bookmarks(書簽)實作了多項 UI 改進。首先,又可以從編輯器頁籤為檔案添加書簽了。隻需右鍵點選頁籤調用上下文菜單,然後選擇 Bookmarks(書簽)。此外,您可以将所有打開的頁籤中的所有檔案添加到 Bookmarks(書簽)。為此,可以調用相同上下文菜單并選擇 Bookmark Open Tabs(為打開的頁籤添加書簽),也可以使用編輯器頁籤窗格右側的三點圖示調用此操作。IDE 會将所有打開的頁籤放入一個新的書簽清單中,您可以随意為其命名。

IDEA 2022.3 釋出:新UI、新配置同步、Java19支援、多項優化來了

以偏好代碼樣式檢視庫代碼

IntelliJ IDEA 2022.3 提供了以偏好樣式閱讀代碼的功能,即使該樣式與檔案的目前格式不同。您可以在 Reader(閱讀器)模式下應用新的可視格式設定層,根據自定義格式方案調整代碼外觀,而無需重新格式化實際代碼。

性能改進

我們進行了顯著性能改進以優化 IDE 的啟動體驗:我們并行化了一些此前按順序運作的程序并減少了 Eager 類加載。我們還将操作更新移至背景線程以改進 UI 響應,并實作多線程 VFS 重新整理來增強索引編制。

編輯器

IDEA 2022.3 釋出:新UI、新配置同步、Java19支援、多項優化來了

改進了複制剪切粘貼行為

我們重做了粘貼操作 (⌘V) 的行為。現在,如果在沒有選擇代碼的情況下複制 (⌘C) 或剪切 (⌘X) 一行,粘貼操作會将剪貼闆的内容添加到目前行上方,而不是像舊版本一樣添加到文本光标處。此外,Settings/Preferences | Advanced Settings(設定 / 偏好設定 | 進階設定)中新增了一個選項,可供在未選擇任何内容的情況下調用複制操作後禁用複制行的選擇。

IDEA 2022.3 釋出:新UI、新配置同步、Java19支援、多項優化來了

針對 JavaScript 和 TypeScript 的 Code Vision 提示

我們針對 JavaScript 和 TypeScript 實作了 Code Vision 内嵌提示。這些提示讓您可以直接在編輯器中即時了解代碼,顯示 inheritors(繼承者)、usages(用法)、code authors(代碼作者)和 related problems(相關問題)等名額。

Java

IDEA 2022.3 釋出:新UI、新配置同步、Java19支援、多項優化來了

新的 Java 檢查和其他改進

我們實作了一系列新的 Java 檢查和快速修複,保護您的代碼免受潛在危害和錯誤。新增了一項檢查來幫助檢測在每個分支中都有一條公共語句的 switch 表達式,并提供了一個快速修複來将語句向上移動到 switch 表達式中,進而縮短代碼。IDE 将報告備援數組長度檢查,以及 Collection.parallelStream() 之後的備援 parallel() 調用。另一項新檢查可以報告僅使用一個元素或字元時數組、清單或字元串的多餘建立。

IDEA 2022.3 釋出:新UI、新配置同步、Java19支援、多項優化來了

Java 19 支援

IntelliJ IDEA 2022.3 支援 2022 年 9 月釋出的 Java 19 的新功能。IDE 現在支援記錄模式以及對 switch 表達式模式比對的更改,提供了代碼高亮顯示、補全和導航。現有檢查和快速修複已相應更新以支援這些更改。

Kotlin

IDEA 2022.3 釋出:新UI、新配置同步、Java19支援、多項優化來了

對 Kotlin 1.7.20 功能的支援

IntelliJ IDEA 2022.3 現在完全支援 Kotlin 1.7.20 中引入的功能,包括新的 ..< 運算符和資料對象聲明。

IDEA 2022.3 釋出:新UI、新配置同步、Java19支援、多項優化來了

針對 Kotlin 改進了 IDE 性能

我們優化了緩存和索引的使用,使代碼分析更快、更穩定。我們還改進了 .gradle.kts 檔案中的代碼補全算法,根據我們的基準測試,它的速度提高了 4-5 倍。

Scala

IDEA 2022.3 釋出:新UI、新配置同步、Java19支援、多項優化來了

更出色的 Scala 3 支援

v2022.3 引入了大量更新以提供更好的 Scala 3 支援。IDE 現在支援形參解組和引用模式,并且在比對類型和類型變量的支援方面做出了諸多改進。現在有針對類型變量的類型推斷,類型變量會被正确解析以用于模式比對目的。特征構造函數中的命名實參已得到正确處理,您可以使用一項操作快速建立一個 Scala 3 枚舉檔案或僅為頂層定義建立一個空 Scala 檔案。我們還有許多 TASTy Reader 增強,提高了高亮顯示的準确性并改進了編輯器性能。

IDEA 2022.3 釋出:新UI、新配置同步、Java19支援、多項優化來了

新的Can be private(可為 private)檢查

有時可以将 public 類、方法或字段設為 private 或 protected。然而,當代碼較為複雜時就很難判斷。新的 Can be private(可為 private)檢查現在可以幫助您确定,還會提出快速修複建議。将可為 private 的成員實際标記為 private 後,您可以将接口與實作詳細資訊分離,進而更容易了解代碼。這也減少了自動補全中的噪聲,使使用過程更容易、更快,同時減少認知負擔。它還提高了編譯器和 IDE 的性能。

IDEA 2022.3 釋出:新UI、新配置同步、Java19支援、多項優化來了

從用法建立形參

如果在方法中有一個未解析的符号,新增的快速修複可以将這個符号添加到方法的形參清單。

版本控制系統

IDEA 2022.3 釋出:新UI、新配置同步、Java19支援、多項優化來了

為 GitHub 和 Space 重新設計了Review list(審查清單)

我們重做了 Review list(審查清單)UI,幫助減少認知負擔并清晰提供有關請求的最重要資訊。在改進中,我們還確定在所有受支援的審查平台上保持一緻的外觀。

建構工具

IDEA 2022.3 釋出:新UI、新配置同步、Java19支援、多項優化來了

針對 Groovy 項目中 build.gradle 檔案操作的改進

IntelliJ IDEA 2022.3 為 Groovy 建構腳本中的 Gradle 版本目錄提供了代碼補全和導航。我們還微調了 Groovy 的 build.gradle 檔案中的代碼高亮顯示,并實作了一些新檢查。IDE 現在會高亮顯示已棄用的配置方法并建議适用替換選項。它還能夠檢測建構腳本中插件 DSL 的不正确用法,并提供了一組新檢查來鼓勵使用任務配置規避 API

IDEA 2022.3 釋出:新UI、新配置同步、Java19支援、多項優化來了

使用新 IntelliJ IDEA 工作區模型 API 的 Maven 導入

在 IntelliJ IDEA 2022.3 中,我們使用新的 IntelliJ 工作區模型 API 引入了實驗性 Maven 導入功能。此更改有望在導入 Maven 項目時提高最高 10% 的速度。選項現在在 Settings/Preferences | Build, Execution, Deployment | Build Tools | Maven | Importing(設定 / 偏好設定 | 建構、執行、部署 | 建構工具 | Maven | 導入)中預設啟用。請注意,并非所有功能在此階段都可用,部分手動子產品設定在重新導入時不會保留。

IDEA 2022.3 釋出:新UI、新配置同步、Java19支援、多項優化來了

Maven2 支援插件

從 v2022.3 開始,我們将解綁對 Maven2 的支援,改為通過一個獨立插件提供,您可以從 Settings/Preferences | Plugins(設定 / 偏好設定 | 插件)查找并安裝或從 Marketplace 下載下傳。

運作 / 調試

IDEA 2022.3 釋出:新UI、新配置同步、Java19支援、多項優化來了

增強了 Java 調試器中的資料流分析輔助

我們改進了 Java 調試器中的資料流分析 (DFA) 功能。DFA 輔助已經預測了某些表達式的未來值。現在,當分析器可以預測代碼的某個分支不會被執行時,它會灰顯對應代碼部分。

IDEA 2022.3 釋出:新UI、新配置同步、Java19支援、多項優化來了

排除覆寫注解的新選項

IntelliJ IDEA 2022.3 引入了一個選項來控制項目中哪些注解應從覆寫統計資訊中排除。要将不想測試的方法通知 IDE,首先用任意注解标記,然後轉到 Settings/Preferences | Build, Execution, Deployment | Coverage(設定 / 偏好設定 | 建構、執行、部署 | 覆寫)并将注解添加到 Exclude annotations(排除注解)清單。

Docker

IDEA 2022.3 釋出:新UI、新配置同步、Java19支援、多項優化來了

在不安裝 Docker Desktop 的情況下從 WSL 使用 Docker 可執行檔案

從 v2022.3 起,IntelliJ IDEA 支援連接配接到 WSL 中運作的 Docker。您可以在 Settings / Preferences | Build, Execution, Deployment | Docker(設定 / 偏好設定 | 建構、執行、部署 | Docker)中設定此類連接配接。

IDEA 2022.3 釋出:新UI、新配置同步、Java19支援、多項優化來了

Pull Docker image(拉取 Docker 鏡像)意圖操作

新增的方式可供輕松拉取所需鏡像,而無需從 Dockerfile、docker-compose.yml 或使用 Testcontainers 的測試中運作。隻需在高亮顯示的鏡像名稱上調用上下文操作 (⌥⏎),然後選擇 Pull Docker image(拉取 Docker 鏡像)。

IDEA 2022.3 釋出:新UI、新配置同步、Java19支援、多項優化來了

.dockerignore 檔案類型支援

我們引入了對 .dockerignore 檔案的全面支援,包括代碼高亮顯示和補全。從 IDE 建構鏡像時,這些檔案會被納入考量。

IDEA 2022.3 釋出:新UI、新配置同步、Java19支援、多項優化來了

在 Dockerfile 檔案中支援 heredoc 格式

Here 文檔允許将後續 Dockerfile 行重定向到 RUN 或 COPY 指令的輸入。IntelliJ IDEA 現在支援此文法,您可以使用它在 Dockerfile 檔案中生成配置檔案或多行腳本。

IDEA 2022.3 釋出:新UI、新配置同步、Java19支援、多項優化來了

來自 Docker 上下文的 Docker 連接配接

如果 Docker 配置檔案中已經進行了設定,那麼您現在可以使用 Docker Contexts(Docker 上下文)設定額外 Docker 連接配接。為此,您可以在 Services(服務)視圖中調用 Add Service(添加服務)上下文菜單并選擇 Docker Connections From Docker Contexts(來自 Docker 上下文的 Docker 連接配接)。

已棄用的 Docker Machine 已從支援的連接配接清單中移除

由于 Docker Machine 已被 Docker 棄用,我們也已将其從 Settings/Preferences | Build, Execution, Deployment | Docker(設定 / 偏好設定 | 建構、執行、部署 | Docker)中的連接配接清單中移除。如果您是活躍的 Docker Machine 使用者,仍然可以通過 API URL 連接配接到它。您可以擷取 Docker 機器清單并輸入相應 URL,也可以輸入 certs 檔案夾的路徑。

教育功能

IDEA 2022.3 釋出:新UI、新配置同步、Java19支援、多項優化來了

IDE 中的程式設計課程

現在,可以直接在 IDE 中學習 Java、Kotlin、Scala、Python、Go 和其他程式設計語言或者提高現有技能。新功能還提供了建立個人教育課程的功能。要通路此功能,請轉到歡迎螢幕上的 Learn(學習)頁籤,點選 Enable Access(啟用通路)。注意,對于 Java 和 Kotlin 以外的語言,您需要安裝一個額外插件。

其他

  • 現在,可以在帶有 ARM64 處理器的 Windows 和 Linux 機器上運作 IntelliJ IDEA 2022.3。IDE 安裝程式處于測試版階段,網站和 JetBrains Toolbox App 均提供 Windows 版,但 Linux 版僅可從網站獲得。
  • 與 IntelliJ IDEA 捆綁的 Android 插件現在提供了 Android Studio Electric Eel Beta 2 的所有功能,包括對 Android Gradle 插件(AGP)7.4.0-beta02 的支援。

更多詳情可檢視:https://www.jetbrains.com/idea/whatsnew/

繼續閱讀