快速使用 vscode 進行 Java 程式設計

魔王不造反發表於2018-04-02

任何一個程式設計師都有自己喜愛的編輯器、工具、開發利器,有這樣一群人,對於 vim 這種上古神器難以駕馭、IDE 又太笨重,這時候多了一個選擇 vscode!!!

vscode 重新定義了編輯器,它開源、免費、Runs everywhere,是一款介於 IDE 和編輯器之間的產物,我們不能用 IDE 的所有特性都往它身上壓,如果都可以的話不就是 IDE 嗎?不就是嗎?所以用起來的感覺你懂的,美滋滋(๑•̀ㅂ•́) ✧

那麼這傢伙都有什麼牛逼之處呢?

特性

  • 微軟開發,軟體質量沒的說
  • 高顏值,介面非常漂亮,允許自定義更改
  • 外掛超級多,開發者很願意接受它
  • 對我天朝程式設計師友好,你懂的
  • 啟動速度比 atom 快,資源佔用少
  • 跨平臺的特效能沒有嗎?能嗎?
  • 對各種程式語言支援良好(當然我只試過java/node/go/python)
  • 自動補全、程式碼高亮、程式碼跳轉...
  • 整合終端好用,可以用 code 命令開啟檔案/資料夾
  • debug 功能好用(簡直是 mini 的 IDE)
  • ( ⊙ o ⊙ )啊!特性太多了我實在寫不完

說了這麼多你一定迫不及待想嘗試吧~ (也許並不是)那現在

安裝 vscode

我知道在座的各位其實根本不用我教你怎麼安裝,因為它是傻瓜式安裝啊!它家的官網是 code.visualstudio.com/,你只需要在首頁下載符合你作業系統的軟體即可。

支援 WindowsLinuxMac

瞭解 vsccde

為什麼要了解它呢?你不瞭解它的組成就不知道怎麼把它用好(高能型大佬除外)。

佈局

快速使用 vscode 進行 Java 程式設計

上面是 vscode 的佈局,和大多數編輯器一樣,分為

  • Editor 用來編輯檔案的主體區域。可以並排開啟三個編輯器。
  • Side Bar 包含不同的像瀏覽器一樣的檢視來協助來完成工程。
  • Status Bar 展示當前開啟的工程和正在編輯的檔案的資訊。
  • View Bar 在最左手邊,幫助切換檢視以及提供額外的上下文相關的提示,比如啟用了Git的情況下,需要提交的變化的數目。

在我看來學習一款編輯器並不用像學習程式語言那樣,按照某個教程把所有的功能都學會,我更喜歡探索性的嘗試自己需要的那些東西,比如在 View Bar 中如何的5個功能,其實點一點就大概明白什麼意思了,查閱文字資料只是讓自己更精確的掌握使用姿勢。

配置

vscode 的使用者配置分3個級別,分別是預設配置、全域性配置和工作區配置,優先順序也依次遞增。對於團隊專案,一些規範可以通過專案目錄下建一個 .vscode/setting.json 檔案進行配置,比如:

// tab長度 
"editor.tabSize": 2, 
// 啟用後,將在儲存檔案時剪裁尾隨空格。 
"files.trimTrailingWhitespace": true, 
// 配置 glob 模式以排除檔案和資料夾。 
"files.exclude": { 
  "**/.git": true, 
  "**/.svn": true, 
  "**/.DS_Store": true, 
  "**/.idea": true 
},
複製程式碼

這個配置我一般是不用的,只用使用者配置,反正電腦就一個使用者。配置一下字型大小、自動儲存等。

必裝外掛

  1. Beautify:程式碼高亮
  2. Terminal:直接喚起終端
  3. Project Manager:多個專案切換
  4. Auto Close Tag:標籤自動閉合(其實我覺得可以內建的)

怎麼安裝呢?


快速使用 vscode 進行 Java 程式設計

在擴充套件輸入框裡輸入你想用的外掛就可以了,當然它還會經常推薦給我們排行比較高的外掛,可以嘗試安裝,安裝完成後重新載入編輯器就可以使用了。

常用快捷鍵

下面這些快捷鍵是我常用的,如果你想看更全的可以看看 VS Code有哪些常用的快捷鍵

  • 向上向下複製一行: Shift+Alt+Up 或 Shift+Alt+Down
  • 註釋程式碼: cmd + /
  • 切換側邊欄: cmd + b
  • 資料夾中查詢: cmd + shift + f
  • 查詢替換: cmd + shift + h
  • 重構程式碼: fn + F2
  • 程式碼格式化: Shift+Alt+F,或 Ctrl+Shift+P 後輸入 format code

Ctrl+P 模式: (Mac 是 CMD+P)

  • 直接輸入檔名,快速開啟檔案
  • > 顯示並執行命令
  • : 跳轉到行數,也可以Ctrl+G直接進入(Mac 是 CMD+G)
  • @ 跳轉到symbol(搜尋變數或者函式),也可以Ctrl+Shift+O直接進入
  • @: 根據分類跳轉symbol,查詢屬性或函式,也可以Ctrl+Shift+O後輸入:進入
  • # 根據名字查詢symbol,也可以Ctrl+T

配置 Java 環境

先安裝 Java 語言相關的外掛 4 枚

  1. Language Support for Java(TM) by Red Hat
  2. Debugger for Java
  3. Java Test Runner
  4. Maven for Java

有人想問了,媽耶還要4個外掛,這麼麻煩的嗎?

第一個外掛幹嘛的?執行 Java 程式碼的,第二個呢?除錯的,不除錯可以不裝,第三個執行單元測試,不測試可以不裝,第四個建議裝上,一個標準化的 Java 工程一定不是幾個檔案組成,maven 是在Java環境下構建應用程式的軟體(本地要先安裝哦)。

這時候還需要配置一下 java.home,我的是

"java.home": "/Library/Java/JavaVirtualMachines/jdk1.8.0_101.jdk/Contents/Home",
複製程式碼

大功告成,現在你可以在 vs code 下建立一個 Mmp.java 開始寫 Hello vscode! 了。

public class Mmp {

  public static void main(){
    System.out.println("Hello vscode!");
  }

}
複製程式碼

點選 除錯 或者按下 F5 執行這久經碼場的輸出語句。具體操作見文章底部視訊。


程式碼定位

快速使用 vscode 進行 Java 程式設計

按住 ctrl 鍵滑鼠懸停在類上面會有類描述,點選即可進入類定義處,方法也是同樣。


程式碼重構

快速使用 vscode 進行 Java 程式設計
程式碼重構

很強大的一個地方就是我們有時候會修改欄位、方法的名稱。

  1. 找到所有的引用: Shift + F12
  2. 同時修改本檔案中所有匹配的: Ctrl+F12
  3. 重新命名:比如要修改一個方法名,可以選中後按 F2,輸入新的名字,回車,會發現所有的檔案都修改了
  4. 跳轉到下一個 ErrorWarning:當有多個錯誤時可以按 F8 逐個跳轉
  5. 檢視 diff: 在 explorer 裡選擇檔案右鍵 Set file to compare,然後需要對比的檔案上右鍵選擇 Compare with file_name_you_chose


執行 SpringBoot 專案

下載一個 SpringBoot 的示例工程

git clone https://github.com/JavaExamples/spring-boot-helloworld.git
code spring-boot-helloworld
複製程式碼
什麼?git 還不會
快速使用 vscode 進行 Java 程式設計
快速使用 vscode 進行 Java 程式設計

啟動除錯,選擇 Java 語言,會提示我們 launch.json 檔案是下面這樣的

{
    // 使用 IntelliSense 瞭解相關屬性。 
    // 懸停以檢視現有屬性的描述。
    // 欲瞭解更多資訊,請訪問: https://go.microsoft.com/fwlink/?linkid=830387
    "version": "0.2.0",
    "configurations": [
        {
            "type": "java",
            "name": "Debug (Launch)-Application<spring-boot-helloworld>",
            "request": "launch",
            "cwd": "${workspaceFolder}",
            "console": "internalConsole",
            "stopOnEntry": false,
            "mainClass": "hello.Application",
            "projectName": "spring-boot-helloworld",
            "args": ""
        },
        {
            "type": "java",
            "name": "Debug (Attach)",
            "request": "attach",
            "hostName": "localhost",
            "port": 0
        }
    ]
}
複製程式碼

主要看 mainClass,只有第一次生成這個檔案,確認後點選 除錯 即可看到控制檯日誌

快速使用 vscode 進行 Java 程式設計


嘗試 Lombok

這個傢伙你用不用都無妨,反正我是挺喜歡的。這裡就不囉嗦到底幹嘛的,簡單來說就是我可以用一個 @Data 註解幫我自動生成(編譯後生成)gettersettertoStringequalshashCode 這些方法,反正多花時間寫這些程式碼也不會提高你的能力,修改的時候還要多花時間,完全沒!必!要!好嗎?

按照官方的文件我嘗試了不在 maven 環境下是行不通的!行不通的。如果你可以的話在文章評論下告訴我哈~

所以我們安裝一個 Lombok Annotations Support for VS Code 就可以了。

在 maven 工程中新增 lombok 依賴

<dependency>
    <groupId>org.projectlombok</groupId>
    <artifactId>lombok</artifactId>
    <version>1.16.20</version>
    <scope>provided</scope>
</dependency>
複製程式碼

試一下吧

快速使用 vscode 進行 Java 程式設計

大兄弟如果你能看到這裡可以跟我領取真經了,下方是本篇文章的視訊操作指南,敬請食用:

想看更多 vscode 技巧?點?下面的開發技巧集錦

vscode開發技巧集錦

我還有一個 QQ 群聊 Java8、聊程式碼、聊程式設計最前言,過於水群直接踢,車牌號:NjYzODg3NzI5 


相關文章