有段時間沒有更新IDEA了,早上看到 IntelliJ IDEA 2024.1 EAP 5釋出的郵件提示,瞄了一眼,發現真的是越來越強了,其中不少功能對我來說還是非常有用的。也許這些能力對關注DD的小夥伴也有幫助,所以搞篇部落格介紹和推薦一下。
Spring、Quarkus等主流框架的支援增強
- Search Everywhere功能中增加
Endpoints
選項卡
具體如下圖所示:
開發者可以在這裡直接搜尋透過Spring、Quarkus、Micronaut、Ktor實現的介面來找到具體的程式碼實現位置。這個功能非常實用,尤其是對於接手老專案的開發者來說,可以快速的定位介面實現來完成開發任務或問題排查。
- 增強Spring Bean的自動補全和自動裝配
IntelliJ IDEA 現在為應用程式上下文中的所有 Bean 提供自動補全功能,並自動連線它們。
如果 bean 透過建構函式具有自動裝配依賴項,則相關欄位也會透過建構函式自動裝配。
同樣,如果透過欄位或 Lombok 的 @RequiredArgsConstructor
註釋注入依賴項,則新 bean 會自動透過欄位連線。
- 增強 Spring 模型圖
在該版本中使用者訪問Spring模型圖變得更加容易,可以如下圖這樣點選Spring標識的行標記直接跳轉:
也可以使用快捷鍵 ⌥⏎
(MacOS) 或 Alt+Enter
(Windows)來生成和跳轉。
同時,該版本還引入了新的圖示,增強了 Spring 模型圖的視覺化內容,如:Components
、Controllers
、Repositories
。此外,您現在可以方便地切換庫中 Bean 的可見性(預設情況下是隱藏的)。
HTTP Client的改進
HTTP Client現在提供更多身份驗證選項,包括 PKCE
授權程式碼和裝置授予流程。它還支援令牌和身份驗證請求的額外引數。
現在它可以自動處理 code_challenge
和 passes code_verifier
的生成,以便在 PKCE
請求中檢索令牌。
這個版本的HTTP Client 可以使用 Netty 作為其低階網路庫。透過支援 SSL、代理和 HTTP/2,使我們能夠在 HTTP 客戶端中實現 HTTP/2 的支援。
此外,HTTP Client的工具欄外觀,也與新的 UI 風格保持一致,提供更加美觀的使用者體驗。
GitHub Action的支援增強
- Workflow 上下文的支援
現在可以為各種 GitHub Action上下文引入了廣泛的自動完成支援,包括github.*
、env.*
、steps.*
和inputs.*
。
這個最佳化非常有用,可以有效的降低編寫複雜工作流指令碼的過程,開發人員不用再去頻繁的搜尋上下文中涉及的引數了。
該最佳化在YAML
檔案配置中也同樣有效:
在YAML
檔案中,開發者還可以使用 branding
功能使用特定圖示和顏色指示器自定義 GitHub 上操作的外觀。
此功能使操作建立者能夠在 GitHub Marketplace 和工作流程中直觀地區分他們的操作,使它們更易於識別和使用者友好。透過在 action.yml
檔案中指定圖示和顏色,開發人員可以一目瞭然地傳達其操作的目的,從而增強整體使用者體驗。這種視覺化定製有助於對操作進行分類,並幫助使用者快速識別 CI/CD 管道所需的工具。
- Docker 映象自動補全
此增強功能在 GitHub 工作流程檔案中提供image和tag建議,從而更輕鬆地將 Docker 容器整合到您的操作中。
- JavaScript 檔案路徑補全
檔案路徑完成功能會自動建議檔案路徑,從而簡化 JavaScript 操作的配置並簡化工作流程執行。
其他更新
- 最佳化JSON schema的處理: 最佳化了 JSON 模式驗證和完成背後的程式碼。因此,IDE 現在可以更快地處理此任務並減少記憶體消耗。在使用 Azure Pipelines 的現實檔案中,架構檢查現在速度提高了 10 倍。
- 現在可以在所有常見場景中輕鬆完成 HTTP Header,例如使用 Spring WebClient 和 RestAssured 測試。當遇到預期值時,會自動出現完成彈出視窗。
另外,DD最近把部落格重新增加了板塊,正在維護幾個有意思的長期連載專欄,其中一個就是《玩轉IDEA》,這次換了工具,直接採用電子文件的形式,閱讀體驗更好,對這些內容感興趣的,可以關注起來!
歡迎關注我的公眾號:程式猿DD。第一時間瞭解前沿行業訊息、分享深度技術乾貨、獲取優質學習資源