我承認(rèn) IDEA 2021.3 有點(diǎn)強(qiáng)!
本文也是記錄一下 IDEA 支持 WSL、SSH、Docker 運(yùn)行 這個(gè)新特性的體驗(yàn),這是我一直想要的功能。不用進(jìn)行過多設(shè)置就讓代碼 Run 起來, 而且還支持?jǐn)帱c(diǎn) Debug,跟本地啟動(dòng)一樣,不過功能還有待改進(jìn)。
本來是說不要隨便更新 IDEA 的了,但看到 IDEA 新版本特性后,果斷、立馬點(diǎn)擊了更新,然后更新到 IDEA 2021.3 也挺久了,不過最近比較忙(主要是因?yàn)閼校?,所以也沒有好好進(jìn)行體驗(yàn)一下這些新功能。
先來說一下日常的使用的體驗(yàn):
啟動(dòng)界面是越來越花里胡哨的了,功能也是越來越花里胡哨的了
更新完成后部分插件也要更新,不然舊版插件不支持新版
目前還沒有遇到什么坑
Run/Debug Configuration 的配置不像以前那樣明顯易用
新版的主要更新內(nèi)容
Space 集成:(我公司團(tuán)隊(duì)不用這個(gè),我自己一個(gè)人也用不到這個(gè),忽略)
支持 Java 16 :(打擾了,日常用著 8 和 11,先不體驗(yàn)吧)
更好的 Git 支持:日常合代碼都是直接用 IDEA 的
Windows 任務(wù)更好的支持:我覺得沒有必要,固定任務(wù)欄直接啟動(dòng)也挺快的啦
Code With Me:感覺帶妹子學(xué) Java 的話,這是個(gè)特別棒的功能
支持 WSL、SSH、Docker 運(yùn)行:就是看著這個(gè)特性而升級的,不過社區(qū)版不支持這個(gè)功能
自從 VS Code 支持 Remote 之后,我日常要在開發(fā)服務(wù)器寫一些腳本、跑一些腳本的時(shí)候,都是直接使用 VS Code SSH 連接服務(wù)器的,感覺超級方便(哈哈哈 我還是用不習(xí)慣 vim)。所以一直想 IDEA 也可以支持 Remote、WSL。
1
開始之前
環(huán)境和軟件:Windows 10 , WSL 2,Docker for Windows,OpenJDK 11,IDEA 2021.3 Ultimate
項(xiàng)目 1:一個(gè)普通的 Java 項(xiàng)目,寫了一個(gè) Hell World 的 class
項(xiàng)目 2:Gradle 構(gòu)建的 Spring Boot Web, 寫了一個(gè) RESTful API
總體的代碼都比較簡單,就不放源碼了。
設(shè)置入口:設(shè)置 WSL、SSH、Docker 運(yùn)行的入口在 Run/Debug Configuration 里,默認(rèn)是 Local machine 跟以前的本地運(yùn)行一樣。
設(shè)置 Run On
2
使用 WSL 運(yùn)行
WSL 1 不太清楚是否支持,我這里用的是 WSL 2 。
首先需要在 WSL 里安裝 JDK 和設(shè)置一下 JAVA_HOME,設(shè)置入口見上面,新建 WSL 的 Run On 環(huán)境,選擇好你的 WSL 發(fā)行版,如果出現(xiàn)綠色的 successfully 表示可以使用這個(gè) WSL。
選擇 WSL 發(fā)行版
如果還需要其他運(yùn)行參數(shù),比如你可以在這里設(shè)置 JAVA_HOME ,在接下來的界面設(shè)置一下即可
額外的一些配置
設(shè)置完成后,選擇 WSL ,就可以和在本地一樣 Run/Debug 。
3
使用 SSH 在遠(yuǎn)程環(huán)境運(yùn)行
這個(gè)總體體驗(yàn)很不好,每次運(yùn)行都要上傳一堆依賴的 jar 包,不知道是不是我沒有配置好 rsync 還是沒有優(yōu)化好。還有一個(gè)待優(yōu)化的點(diǎn)是最好可以手動(dòng)選擇 SSH 還是 Password 的方式登錄。而不是要像下圖那樣子需要先自己配置一下:
沒有使用 rsync 的話,每次所有的 class 和依賴的 jar 都要上傳
使用 rsync 后,像 Gradle、Maven 引入的依賴每次還是要上傳
如果使用 SSH 方式登錄的話,需要先配置一下 SSH,然后再在 Run On 里選擇新建一個(gè) SSH Run Target:
新建 Run Target,選擇 New,或者 Existing 也就是上面配置的 SSH:
Existing 是表示已經(jīng)配置好的 SSH
設(shè)置 JAVA_HOME 和在遠(yuǎn)程服務(wù)器的目錄:
選擇遠(yuǎn)程目錄
這樣子配置好之后,就可以像本地一樣正常的 Run 和 Debug。
IntelliJ IDEA 2021.1 最新變化
IntelliJ IDEA 2021.1 引入 Java 16 和 WSL 2 支持、Space 集成、Code With Me、IDE 內(nèi)部的 HTML 預(yù)覽窗口、在 SSH 主機(jī)和 Docker 容器中運(yùn)行代碼的選項(xiàng)以及其他實(shí)用更新。您可以觀看這段視頻概覽或繼續(xù)閱讀,詳細(xì)了解最重要的變化!
下載
簡要導(dǎo)覽
Space 集成
PreviousNext
Space 集成
與 Space 集成,我們新的軟件開發(fā)和團(tuán)隊(duì)協(xié)作平臺,現(xiàn)在可以開箱即用。您可以通過歡迎屏幕上的 Get from VCS 連接到 JetBrains Space 中的組織。登錄后,您可以查看和克隆項(xiàng)目倉庫,檢查隊(duì)友的代碼以及編寫 Space Automation 腳本。
WSL 2 支持
UX 外部依賴項(xiàng)
Java 項(xiàng)目 WSL 2 支持
我們知道您一直在期待這次更新!現(xiàn)在,您可以在 IntelliJ IDEA 中使用 WSL 2 中的 Java 項(xiàng)目。IDE 可以檢測 JDK 安裝、安裝 JDK、編譯和運(yùn)行 Maven 和 Gradle 項(xiàng)目以及使用 IntelliJ IDEA 構(gòu)建系統(tǒng)的項(xiàng)目。
協(xié)作開發(fā)
Space 集成
Code With Me,一項(xiàng)用于協(xié)作開發(fā)和結(jié)對編程的新服務(wù),已在 IntelliJ IDEA 中開箱即用。它還具有視頻和語音通話功能,讓遠(yuǎn)程協(xié)作更上一層樓。無論您何時(shí)想與同事交流,都可以直接從 JetBrains IDE 中發(fā)起音頻和視頻通話。Code With Me 完美匹配 1:1 會議和小組會議,您可以邀請數(shù)十人參與。要詳細(xì)了解這些更新,請閱讀我們的博文。
運(yùn)行目標(biāo)
Space 集成
Run Targets 功能允許您在 Docker 容器或遠(yuǎn)程機(jī)器上運(yùn)行、測試、分析和調(diào)試應(yīng)用程序。IntelliJ IDEA Ultimate 目前允許您在 Docker、SSH 和 WSL 目標(biāo)上運(yùn)行 Java 應(yīng)用程序、JUnit 測試以及 Maven、Gradle、Micronaut、基于 Maven 的 Quarkus 和 Spring Boot 項(xiàng)目。更多信息,請查看此博文。
用戶體驗(yàn)
編輯器 HTML 預(yù)覽
內(nèi)置 HTML 預(yù)覽
新的內(nèi)置瀏覽器預(yù)覽可以讓您快速預(yù)覽 HTML 文件。在編輯器右上角,點(diǎn)擊微件中帶有 IntelliJ IDEA 徽標(biāo)的圖標(biāo)即可將其打開。您如果在 HTML 中進(jìn)行了更改,或者改變了鏈接的 CSS 和 JavaScript 文件,則預(yù)覽將即時(shí)更新。
UX 外部依賴項(xiàng)
在搜索范圍內(nèi)自定義外部依賴項(xiàng)
我們已經(jīng)使搜索范圍更易于自定義。您可以將 External Dependencies 設(shè)置為包含在范圍中或從范圍中排除。轉(zhuǎn)到 Preferences/Settings | Appearance & Behavior | Scopes,使用右側(cè)按鈕更改 External Dependencies 的狀態(tài)。
HPROF 內(nèi)存查看器
在 Windows 上快速訪問最近的項(xiàng)目
我們更新了對 Windows 跳轉(zhuǎn)列表的支持,現(xiàn)在,右鍵點(diǎn)擊任務(wù)欄或開始菜單上的 IntelliJ IDEA 圖標(biāo)即可打開您最近的項(xiàng)目。
改進(jìn)了輔助功能
我們的一大關(guān)鍵任務(wù)是讓所有用戶都能不受阻礙地使用我們的 IDE。在這個(gè)版本中,我們?yōu)闅g迎屏幕、Project Structure 視圖和 VCS 日志中的 UI 元素添加了更多標(biāo)簽。啟用屏幕閱讀器后,現(xiàn)在可以正確讀出這些元素以及間距圖標(biāo)。我們也在努力改善對 macOS 用戶的輔助功能支持。
在 Windows 中將高對比度模式與 IDE 主題同步
如果您在 Windows 上使用了高對比度模式,當(dāng)您第一次啟動(dòng) IDE 時(shí),您的 IDE 將自動(dòng)應(yīng)用高對比度主題。
版本控制
Pull Request 支持
更好的 Pull Request 支持
Pull Request 可以更快完成創(chuàng)建:只需在 Pull Request 視圖中點(diǎn)擊 + 圖標(biāo)并填寫所有細(xì)節(jié)。視圖頂部的新選項(xiàng)卡包含關(guān)于您的 Pull Request 的所有信息。雙擊 Files 選項(xiàng)卡中的任意文件,IDE 將打開編輯器中的差異。您還會發(fā)現(xiàn)對 Pull Request 模板的支持,其中包含 Pull Request 的描述文本。
Git 提交模板
支持 Git 提交模板
IntelliJ IDEA 支持 Git 提交模板。如果要?jiǎng)?chuàng)建自定義提交消息,您可以使用模板,在其中填寫必要信息。然后,IDE 將把文本顯示為初始提交消息。
預(yù)提交檢查
為預(yù)提交檢查配置配置文件
現(xiàn)在,在將變更提交到 VCS 之前,可以輕松選擇代碼檢查配置文件。點(diǎn)擊齒輪圖標(biāo)顯示提交選項(xiàng),選中 Analyze code 復(fù)選框,點(diǎn)擊 Choose profile,然后選擇所需的配置文件。您的 IDE 會在提交前用它來檢查代碼。
URL 內(nèi)嵌提示
從另一個(gè)分支獲取文件
在 v2021.1 中,您可以通過 Compare with branch 對話框從另一個(gè)分支獲取文件。您只需選擇要獲取的文件,然后點(diǎn)擊 Show diff 旁邊新增的向下箭頭圖標(biāo)。
改進(jìn)了分支
保存到 Shelf
您可以使用新的 Save to Shelf 操作將變更保留在本地并復(fù)制到 Shelf。在 macOS 上按 ??A(在 Windows 或 Linux 上按 Ctrl+Shift+A),然后輸入 Save to Shelf 即可訪問此操作。
Perforce 集成
Perforce 插件現(xiàn)在與 IntelliJ IDEA Community Edition 完全兼容,并與您的 IDE 捆綁。此插件源代碼位于 GitHub。
編輯器
可調(diào)整字體
字體粗細(xì)選項(xiàng)
在長時(shí)間的編碼工作中,選擇一個(gè)舒適的編輯器字體非常重要。最近增加的版式設(shè)置讓這個(gè)選擇變得更加簡單和個(gè)性化。在 v2021.1 中,您可以在 Preferences / Settings | Editor | Fonts 中調(diào)整主字體和粗體字體的粗細(xì)。
最大化分割視圖中的選項(xiàng)卡
最大化分割視圖中的選項(xiàng)卡
打開多個(gè)垂直分割編輯器的選項(xiàng)卡時(shí),可以雙擊其中任意一個(gè)以最大化該特定選項(xiàng)卡的編輯器窗口。只需再次雙擊即可將窗口恢復(fù)到原始大小。
PreviousNext
JSONPath 支持
IntelliJ IDEA 現(xiàn)在支持使用 Goessner 或 Jayway 語法的 JSONPath 表達(dá)式。對于 JSON 文件,您可以通過 Edit | Find 調(diào)用 Evaluate JSONPath Expression 操作,在 JSONPath 寫入查詢。如果文件包含由 JSONPath 編寫的部分,您可以使用相同的功能并添加 JSON 輸入以測試 JSONPath 查詢。
JSON Lines 支持
JSON Lines 支持
IntelliJ IDEA 支持以換行符分隔的 JSON Lines 格式,該格式用于處理結(jié)構(gòu)化數(shù)據(jù)和日志。IDE 將識別 .jsonl、.jslines、.ldjson 和 .ndjson 文件類型。
分析器 ULTIMATE
PreviousNext
我們重新設(shè)計(jì)了分析器 UI。Home 窗口的信息量更大,將分析器附加到進(jìn)程的速度也更快。我們還添加了兩個(gè)新操作,可以通過右鍵點(diǎn)擊正在運(yùn)行的應(yīng)用程序來訪問:Capture Memory Snapshot,用于獲取應(yīng)用程序的 *.hprof 快照;CPU and Memory Live Charts,會打開一個(gè)帶有可視化工具的選項(xiàng)卡,用于跟蹤資源消耗。
Java
PreviousNext
支持 Java 16
IntelliJ IDEA 具有對 Java 16 的基本支持,于 2021 年 3 月發(fā)布。部分更新包括內(nèi)部類聲明顯式或隱式靜態(tài)成員的新功能,以及 Stream.collect(toUnmodifiableList()) 的變化,其已轉(zhuǎn)換為 stream.toList()。IDE 在流的代碼補(bǔ)全列表上首先顯示 toList() 項(xiàng)。
PreviousNext
數(shù)據(jù)流分析的新檢查
IntelliJ IDEA 會在數(shù)組初始化為負(fù)數(shù)時(shí)發(fā)出警告。它還可以識別 Arrays.copyOf() 和 Collection.toArray() 方法。而且,IDE 還支持拆箱或轉(zhuǎn)換整數(shù)的方法,如 Integer.longValue 和 Byte.intValue。
PreviousNext
其他改進(jìn)的新檢查
現(xiàn)在,您可以縮小 for-each 循環(huán)參數(shù)類型,避免不必要的轉(zhuǎn)換。如果篩選器使用的值與映射器生成的值相同,則另一項(xiàng)檢查允許您通過互換 .filter() 和 .map() 調(diào)用簡化代碼語法。此外,將 StringBuffer 替換為 StringBuilder 的檢查已更新,涵蓋了更多情況。
PreviousNext
鏈?zhǔn)綐?gòu)建器方法的格式設(shè)置
鏈?zhǔn)綐?gòu)建器方法的新格式設(shè)置選項(xiàng)有助于提高其可讀性。您可以在 Chained method calls 下拉列表的 Preferences/Settings | Editor | Code Style | Java | Wrapping and Braces 中配置格式化程序。builder methods 選項(xiàng)可以讓您創(chuàng)建一列方法,IDE 將把這些方法視為構(gòu)建器方法,把每個(gè)方法置于單獨(dú)一行。選中 Wrap first call 復(fù)選框時(shí),第一個(gè)構(gòu)建器方法也將出現(xiàn)在單獨(dú)一行上。您也可以手動(dòng)添加縮進(jìn),如果勾選 Keep builder methods indents 復(fù)選框,IDE 將使其保持不變。
Kotlin
Kotlin 快速高亮顯示
更快地高亮顯示代碼問題
實(shí)時(shí)代碼分析能夠更快地檢測到錯(cuò)誤和警告。與之前版本相比,IntelliJ IDEA 2021.1 幾乎可以即時(shí)高亮顯示代碼問題?,F(xiàn)在,代碼補(bǔ)全機(jī)制可以更快地運(yùn)行,并且 IDE 對凍結(jié)的響應(yīng)有所改善。
Kotlin 快速高亮顯示
改進(jìn)的代碼補(bǔ)全
Kotlin 中的代碼補(bǔ)全機(jī)制提供了需要類型參數(shù)的函數(shù)。選擇此類函數(shù)后,IDE 會將正確的類型參數(shù)添加到前面的代碼。
更好的代碼覆蓋率
IntelliJ IDEA 的 code coverage 運(yùn)行程序現(xiàn)在完全支持 Kotlin 的內(nèi)聯(lián)函數(shù)和協(xié)同程序。
Swagger UI 支持
重構(gòu)改進(jìn)
我們重新設(shè)計(jì)了 Change Signature 重構(gòu)的 UI,并添加了一個(gè)新復(fù)選框,用于將添加的參數(shù)設(shè)置為默認(rèn)參數(shù)。
Kotlin 調(diào)試器更新
IntelliJ IDEA 調(diào)試器可以評估 Kotlin 中的 get 表達(dá)式,并將其顯示在 Variables 視圖中。您也可以從 IDE 跳轉(zhuǎn)到源。
Kotlin UML
適用于 Kotlin 的 UML 類圖
UML類圖現(xiàn)已適用于編譯到 JVM 的 Kotlin 代碼,并且可以同時(shí)顯示 Java 和 Kotlin 類。我們計(jì)劃即將支持其他 Kotlin 后端的 UML 圖。
Scala
Type Diff 中的 Kind
Type Diff 中的 Kind
Scala 開發(fā)者用到 kind 程度較高的類型時(shí),往往傾向于采用獨(dú)特的樣式。Type Diff 工具提示現(xiàn)在支持 kind。
機(jī)器學(xué)習(xí)補(bǔ)全
機(jī)器學(xué)習(xí)補(bǔ)全
該版本引入了基于機(jī)器學(xué)習(xí)的 Scala 代碼補(bǔ)全。您可以在 Settings | Editor | Code Completion | ML | Scala 中啟用該功能。
PreviousNext
編譯圖表中的階段和單元
除了模塊,編譯圖表現(xiàn)在還可以顯示階段和單元,讓您更深入地了解編譯。打開 Build 工具窗口,選擇 Chart 節(jié)點(diǎn),選擇細(xì)節(jié)的所需 Level。
IntelliJ 平臺插件模板
IntelliJ 平臺插件模板
通過 sbt-idea 插件即可使用 Scala 和 sbt 開發(fā) IntelliJ 平臺插件。新增的內(nèi)置 Project Wizard 模板將使過程更加簡單(這個(gè)功能取決于 Plugin DevKit)。
構(gòu)建工具
HPROF 內(nèi)存查看器
我們已經(jīng)恢復(fù)了導(dǎo)入 Maven 項(xiàng)目時(shí)自定義設(shè)置的功能。要激活該選項(xiàng),請?jiān)?File | New Projects Settings | Preferences for new Projects | Build, Execution, Deployment | Build Tools | Maven 中選擇 Show settings dialog for new Maven projects。
框架與技術(shù) ULTIMATE
Pull Request 支持
支持替換 http:// 的新檢查
您的 IDE 現(xiàn)在可以高亮顯示 http:// 協(xié)議用法,并將其更改為 https://。該檢查默認(rèn)啟用。您可以將 URL 添加到忽略的 URL 列表,或者在 Preferences/Settings | Editor | Inspections | Security – Link with unencrypted protocol 中禁用對整個(gè)或部分項(xiàng)目的檢查。
Pull Request 支持
改進(jìn)了 HTTP 客戶端
如果您從 HTTP 客戶端運(yùn)行請求,響應(yīng)將出現(xiàn)于在此版本獲得 UI 和 UX 更新的 Services 工具窗口。您可以折疊返回的 HTML、JSON 或 XML,復(fù)制其正文,隱藏行號,選擇顯示格式,并快速滾動(dòng)到響應(yīng)的頂部和底部。
HTTP 客戶端中的 SSL 支持
如果將 SSL 客戶端身份驗(yàn)證用于 https:// 協(xié)議,則可以在 HTTP 客戶端中配置 SSL 設(shè)置。為此,請點(diǎn)擊 Add environment file,然后選擇 Private。IDE 將自動(dòng)創(chuàng)建一個(gè)文件,您可以在其中添加 SSL 配置。代碼補(bǔ)全將提供幫助。
Swagger UI 支持
適用于 JVM 框架的新項(xiàng)目向?qū)?/span>
我們重新設(shè)計(jì)了用于創(chuàng)建 Spring、Micronaut、Quarkus 和 MicroProfile 項(xiàng)目的向?qū)?。開始一個(gè)新項(xiàng)目現(xiàn)在只需兩步!第一個(gè)屏幕方便地包含了所有核心信息,第二個(gè)屏幕則顯示了特定于框架的設(shè)置。新的 UI 更加整潔,項(xiàng)目創(chuàng)建流程也更加直觀。
Pull Request 支持
改進(jìn)了 JPA 支持
我們?yōu)榘?JPA 實(shí)體的項(xiàng)目添加了重新設(shè)計(jì)的間距圖標(biāo)。這些圖標(biāo)可以點(diǎn)擊,并包含了對實(shí)體及其特性最實(shí)用的操作列表。我們還改進(jìn)了對 Kotlin 和多模塊項(xiàng)目的 JPA 支持。
適用于 Jakarta EE 9 的 JPA 控制臺
現(xiàn)在可以使用 JPA 控制臺在 Jakarta EE 9 項(xiàng)目中編寫和運(yùn)行 JPQL 查詢。
UML 圖的新配色方案
我們給使用淺色主題的用戶帶來一個(gè)好消息:UML 圖現(xiàn)已擁有新的配色方案,更加整潔易讀。
Swagger 改進(jìn)
Swagger 支持帶有外部文件引用 ($ref) 的規(guī)范。此外,規(guī)范文件的 Structure 視圖也獲得更多節(jié)點(diǎn),包括 Security、Callbacks 和 Examples。
Swagger UI 支持
Selenium 頁面對象生成器
IntelliJ IDEA 現(xiàn)在支持用于檢測 Web 應(yīng)用程序 DOM 元素的實(shí)驗(yàn)性工具。使用前安裝 Selenium UI Testing 插件。
您可以通過 Tools | Generate Selenium Page Object 訪問這個(gè)新工具。在打開的對話框中,輸入網(wǎng)頁地址,選擇任意 DOM 元素,然后將其添加到下面的區(qū)域。您可以在那里更改元素的語言或框架。我們的頁面對象生成器支持Java、Kotlin 和 Groovy 以及 Selenium、FluentLenium、Selenide、Geb、Atlas 和 JDI Light 等框架。
您可以自定義每個(gè)框架的代碼模板。
Kubernetes ULTIMATE
快速刪除資源
可以從編輯器中刪除當(dāng)前上下文中的所有群集資源 - 只需點(diǎn)擊間距中的 Run 圖標(biāo),然后選擇 Delete。
支持 Kustomize 3.7.0 組件
您可以在 Settings/Preference | Languages & Frameworks | Kubernetes 的 Kustomize 版本下拉列表中選擇新的 Kustomize 3.7.0 組件。
支持 kind: List
如果您需要使用 kubectl get <resource type> -o yaml 命令返回的內(nèi)容或?qū)①Y源整理到列表,IDE 現(xiàn)已支持 kind: List。在列表的每個(gè)資源中,您都可以重命名標(biāo)簽,并通過間距圖標(biāo)使用代碼輔助和導(dǎo)航。您還可以將列表與多文檔 YAML 文件相互轉(zhuǎn)換。
PreviousNext
Helm 項(xiàng)目的非默認(rèn)值
可以創(chuàng)建自定義 values.yaml 文件。IDE 會將名稱中帶有“values”的文件視為值文件。從上下文菜單選擇 Configure Helm Parameters、Helm Lint 或 Helm Template,打開對話框,配置圖表模板將使用的值文件。您也可以將值粘貼到對話框的 Additional values 區(qū)域手動(dòng)添加值。
Docker
PreviousNext
改進(jìn)了 Run/Debug Configuration
Run/Debug Configuration 對話框現(xiàn)在更加簡潔靈活。要添加所有必要的構(gòu)建選項(xiàng),請點(diǎn)擊 Modify options。要添加運(yùn)行選項(xiàng),請點(diǎn)擊 Modify。IDE 現(xiàn)在會驗(yàn)證每個(gè)選項(xiàng)以確保其兼容。我們支持 Docker Compose 的所有現(xiàn)有選項(xiàng)。代碼補(bǔ)全現(xiàn)在支持 Dockerfiles Run Options 和 Image ID or name.
BuildKit 支持
我們增加了對 BuildKit 的實(shí)驗(yàn)性支持,可加快項(xiàng)目構(gòu)建速度。同時(shí)簡化了從整個(gè)多階段 Dockerfile 分別構(gòu)建命名階段的操作。您只需單擊階段名稱旁邊的 hammer 圖標(biāo),IDE 即可使用 BuildKit 構(gòu)建映像。
多階段 Dockerfiles 中的 UI 增強(qiáng)
如果使用多階段 Dockerfile,您現(xiàn)在可以折疊階段并在階段之間發(fā)現(xiàn)明顯的分隔線。
取消 Docker 運(yùn)行
正在運(yùn)行的 Dockerfile 可以快速停止。為此,請轉(zhuǎn)到 Services 工具窗口,選擇正在運(yùn)行的項(xiàng),調(diào)用上下文菜單,然后點(diǎn)擊 Stop Deploy。
Docker 掛載的環(huán)境變量和宏
使用 Bind mount 時(shí),現(xiàn)在可以更快地輸入主機(jī)上目錄的路徑。補(bǔ)全機(jī)制允許您在 Run/Debug Configuration 的 Bind mount 選項(xiàng)中選擇宏和環(huán)境變量。
Dockerfiles 中的映像補(bǔ)全
代碼補(bǔ)全現(xiàn)在可以用于映像名稱。
JavaScript ULTIMATE
改進(jìn)了對 Stylelint 的支持
使用 Stylelint,您可以更輕松地檢查 CSS 代碼?,F(xiàn)在,點(diǎn)擊幾下即可解決這個(gè)常見的 linter 的問題。將鼠標(biāo)懸停在文件中的問題上或?qū)⑽谋竟鈽?biāo)放在其上,然后按 Alt+Enter,選擇 Stylelint: Fix current file。此外,您現(xiàn)在可以在 Preferences / Settings | Languages & Frameworks | Style Sheets | Stylelint 的相應(yīng)字段下指定配置文件的路徑。
捆綁的 MDN 文檔
MDN 文檔現(xiàn)與 IntelliJ IDEA 捆綁。這將有助于防止 MDN 網(wǎng)站的連接問題,并使編輯器內(nèi)文檔在 HTML、CSS 和 JavaScript 文件中顯示得更快。編輯器內(nèi)文檔也將提供更多信息 - 例如,您將看到有關(guān) JavaScript API 受支持的瀏覽器版本的詳細(xì)信息。
Swagger UI 支持
樣式表的選擇器特異性
使用樣式表時(shí),您現(xiàn)在可以查看選擇器的特異性 - 只需將鼠標(biāo)懸停在要查看的選擇器上即可?;蛘?,將焦點(diǎn)放在選擇器上,按 F1/Ctrl+Q 在 Documentation 彈出窗口中查看這些信息。
數(shù)據(jù)庫工具 ULTIMATE
關(guān)于數(shù)據(jù)庫工具更新的詳細(xì)描述,請閱讀最新變化。
授權(quán) UI
我們?yōu)樾薷膶ο髸r(shí)的授權(quán)編輯添加了一個(gè) UI。您可以使用 Cmd/Ctrl+F6 在數(shù)據(jù)庫瀏覽器中的用戶上調(diào)用 Modify user 窗口,該窗口現(xiàn)在具有向?qū)ο筇砑邮跈?quán)的 UI. 這些更新適用于 PostgreSQL、Redshift、Greenplum、MySQL、MariaDB、DB2、SQL Server 和 Sybase。
上下文實(shí)時(shí)模板
我們推出了從數(shù)據(jù)庫瀏覽器直接生成簡單語句的解決方案 - 實(shí)時(shí)模板。您可以使用 SQL node 中的 Preferences/Settings | Editor | Live Templates 添加自己的模板或編輯現(xiàn)有的模板。
數(shù)據(jù)庫復(fù)制粘貼
簡單明了的操作
我們簡化了導(dǎo)航 - 在 SQL 中的對象上調(diào)用 Go to declaration (Ctrl/Cmd+B) 現(xiàn)在會將您帶到 DDL,而不是數(shù)據(jù)庫樹。我們還為 Select in database tree 操作引入了快捷鍵:Windows/Linux 為 Alt+Shift+B,macOS 為 Opt+Shift+B。
更好的數(shù)據(jù)庫排序
更好的排序
我們改進(jìn)了數(shù)據(jù)排序。新的 ORDER BY 字段的工作原理類似于 WHERE 字段(之前叫做 Filter):輸入工作子句將其應(yīng)用于網(wǎng)格查詢。如果要在客戶端使用排序(IntelliJ IDEA 不會重新運(yùn)行查詢,也不會在當(dāng)前頁面對數(shù)據(jù)進(jìn)行排序),應(yīng)取消選中 Sort via ORDER BY。另一個(gè)更新是,排序默認(rèn)不會“堆疊”;點(diǎn)擊用于排序數(shù)據(jù)的列名后,基于其他列的排序?qū)⒈磺宄?/span>
數(shù)據(jù)庫復(fù)制粘貼
輕松復(fù)制粘貼數(shù)據(jù)源
聞名世界的快捷鍵 Ctrl/Cmd+C/V/X 現(xiàn)在可以用于復(fù)制、剪切和粘貼數(shù)據(jù)源。復(fù)制數(shù)據(jù)源時(shí),XML 會被復(fù)制到剪貼板,然后可以通過通訊工具共享。您也可以使用 Paste 操作從其他位置粘貼 XML。如果您在項(xiàng)目中剪切并粘貼數(shù)據(jù)源,它會被直接移動(dòng),無需密碼。但在其他情況下都需要密碼。
編輯 MongoDB 中的數(shù)據(jù)
編輯 MongoDB 中的數(shù)據(jù)
您現(xiàn)在可以編輯 MongoDB 集合中的數(shù)據(jù)。還有語句預(yù)覽可供使用。為了使編輯更加靈活,我們引入了從 UI 更改字段類型的功能。您可以從字段的上下文菜單或值編輯器中完成此操作。
4
使用 Docker 運(yùn)行
Docker 方式,先前我還以為會比較麻煩,一來我對 Docker 不是很熟悉,二來我也不知道該怎么配置 Dockerfile,但體驗(yàn)下來發(fā)現(xiàn)也可以很絲滑的,Dockerfile 文件的配置就一行搞定了,不得不說有點(diǎn)出乎我的意料:
# 剛開始我也不知道怎么配置,就只放了這么一句,發(fā)現(xiàn)竟然就可以了
FROM openjdk:11.0.11-oraclelinux7
新建一個(gè) Run Target,選擇 Docker 會彈出這個(gè)界面。首先要根據(jù)下圖先設(shè)置一下 Docker Server。Dockerfile 就使用上面的那個(gè) Dockerfile 就可以了:
有點(diǎn)小 bug,Run options 的配置不生效,而是使用了隨機(jī)端口映射,Spring Boot 的那個(gè)項(xiàng)目啟動(dòng)后,IDEA 會告訴告訴你映射到那個(gè)端口了。
Docker 服務(wù)的設(shè)置
Docker Server 設(shè)置,這里使用了本地的 Docker:
設(shè)置使用本地的 Docker
出現(xiàn)這樣的界面就表示啟動(dòng)成功了:
docker 的配置也完成
剩下的正常 Run Debug。
4
總結(jié)
不管是 WSL 、SSH 還是 Docker,簡單配置一下真的跟本地運(yùn)行沒有太大的區(qū)別,正常的 Run、正常的 Debug。對于需要這些功能的開發(fā)人員,還是比較建議升級的。
這個(gè) IDEA 的新特性一套體驗(yàn)下來,雖然有幾個(gè)前面所提的問題,但不得不說:IDEA YYDS!。
—————END————— 推薦閱讀: 一款開源的Java完整停車場系統(tǒng)項(xiàng)目(附源碼)
最近面試BAT,整理一份面試資料《Java面試BAT通關(guān)手冊》,覆蓋了Java核心技術(shù)、JVM、Java并發(fā)、SSM、微服務(wù)、數(shù)據(jù)庫、數(shù)據(jù)結(jié)構(gòu)等等。 獲取方式:關(guān)注公眾號并回復(fù) java 領(lǐng)取,更多內(nèi)容陸續(xù)奉上。 明天見(??ω??)??
