win10+vscode部署java開發環境

目錄

  • Java開發插件配置:
  • 調試:
  • 快捷鍵:
  • 啟動配置文件launch.json:
  • 啟動配置說明:
    • Launch:
    • Attach:
    • User Setting:
  • 遇到的問題:
  • 參考:

Java開發插件配置:

Microsoft有個官方的插件Java Extension Pack,點開它的“依賴項”可以看到就是需要裝的幾個插件,可以直接裝這個

或者

我們可以直接安裝 Java 擴展包 ,里面包含了受大多數 Java 開發者歡迎的插件:

  • Language Support for Java(TM) by Red Hat:通過 Eclipse ? JDT Language Server 提供 Java 語言支持
  • Debugger for Java:基于 Java Debug Server 的輕量級調試工具。
  • Java Test Runner:執行和調試 Java 測試用例。
  • Maven for Java:Maven 插件。

根據自己需要配置的插件:

  1. Spring Boot Support
  2. Spring Initializr Java Support
  3. Tomcat for Java
  4. CheckStyle for Java
  5. Lombok Annotations Support for VS Code
  6. Terminal

調試:

打開包含 Java 項目的代碼,然后按下面的步驟進行:

  1. 準備項目。打開一個 .java 文件,Java 擴展會激活。Maven、Gradle 和 Eclipse 項目都能得到支持。這個擴展會自動構建項目,不需要手工觸發構建。
  2. 開始調試。切換到調試視圖(Ctrl+Shift+D),打開 launch.json 并添加 Java 調試配置。
  3. 在 mainClass 中填入要啟動的類,或者在 hostName 中填入要附加的主機名以及在 port 中填入端口。
  4. 設置斷點并按 F5 開始調試。

支持以下特性:

  • 啟動/附加 - 你可以在 VS Code 中啟動一個 Java 項目,也可以附加到一個在本地或遠程端以調試模式運行的 JVM 進程。
  • 斷點 - 支持表達式條件或命中條件斷點,可以在內置的斷點設置容器中輕松進行設置。因此你可以直接在源代碼視圖中插入斷點,不需要彈出容器,非常方便。按異常中斷也得到了支持。
  • 控制流 - 包括 暫停、繼續 F5、單步 F0、步進 F11、步出(跳出) Shift+F11
  • 數據審查 - 當程序停止在斷點上的時候,調試器可以訪問當前內存中的變量名和值。支持查看/監視/設置變量值。
  • 診斷 - 調用棧 面板會顯示程序的調用棧,你在這個面板中可以在捕獲的調用路徑中隨意跳轉。多線程調試也通過并行棧得到支持。
  • 調試控制臺 - 可以從調試控制臺看到標準輸出和錯誤輸出信息。

快捷鍵:

注釋代碼: Ctrl + /

切換側邊欄: Ctrl + b

文件夾中查找: Ctrl + shift + f

查找替換: Ctrl + shift + h

打開一個新的窗口:Ctrl +Shift + n

重構代碼: fn + F2

代碼格式化: Shift+Alt+F,或 Ctrl+Shift+P 后輸入 format code

啟動調試:F5

啟動配置文件launch.json:

{// 使用 IntelliSense 了解相關屬性。 // 懸停以查看現有屬性的描述。// 欲了解更多信息,請訪問: https://go.microsoft.com/fwlink/?linkid=830387"version": "0.2.0","configurations": [{"type": "java","name": "Debug (Launch) - Current File","request": "launch","vmArgs":"-Dserver.port=8082 -Dspring.profiles.active=dev -Dmaven.test.skip=true","mainClass": "${file}"},{"type": "java","name": "Debug (Launch)-SpringBootDemoApplication<SpringBootDemo>","request": "launch","vmArgs":"-Dserver.port=8081 -Dspring.profiles.active=dev -Dmaven.test.skip=true","mainClass": "com.qhong.SpringBootDemoApplication","projectName": "SpringBootDemo"}]
}

啟動配置說明:

Launch:

  • mainClass (required): java 代碼的 main 類 (例如:[mymodule/]com.xyz.MainClass).
  • args: 傳遞給程序的命令行參數
  • sourcePaths: 程序的額外源目錄。默認情況下,調試器從項目設置中查找源代碼。這個選項允許調試器在額外的目錄中查找源代碼
  • modulePaths: 用于啟動JVM的模塊路徑。如果沒有指定,調試器將自動從當前項目解析
  • classPaths: 啟動JVM的類路徑。如果沒有指定,調試器將自動從當前項目解析
  • encoding: 該文件中的JVM的編碼設置。如果沒有指定,將使用’UTF-8’。在Supported Encodings 中可以找到可能的值
  • vmArgs: JVM的額外選項和系統屬性(例如:-Xms<size> -Xmx<size> -D<name>=<value>)
  • projectName: 調試器在其中搜索類的首選項目。在不同的項目中可能會有重復的類名。當調試器在啟動程序時查找指定的主類時,這個設置也可以工作。表達式求值是必須的
  • cwd: 程序的工作目錄
  • env: 程序的額外環境變量
  • stopOnEntry: 啟動后自動暫停程序
  • console: 用于啟動程序的指定控制臺。默認為 internalConsole
    • internalConsole: VS Code Debug 控制臺 (輸入不被支持)
    • integratedTerminal: VS Code 集成終端
    • externalTerminal: 可以在用戶設置中配置的外部終端
  • stepFilters: 在執行debug調試時,跳過指定的類或方法
    • classNameFilters: 跳過指定的類。類名應該完全限定,支持通配符
    • skipSynthetics: 跳過synthetic 方法
    • skipStaticInitializers: 跳過靜態初始化方法
    • skipConstructors: 跳過構造方法

Attach:

  • hostName (required): 遠程調試器的主機名或IP地址
  • port (required): 遠程調試器的debug端口
  • timeout: 重新連接之前的超時時間,以毫秒為單位(默認為30000ms)
  • sourcePaths: 程序的額外源目錄。默認情況下,調試器從項目設置中查找源代碼。這個選項允許調試器在額外的目錄中查找源代碼
  • projectName: 調試器在其中搜索類的首選項目。在不同的項目中可能會有重復的類名。當調試器在啟動程序時查找指定的主類時,這個設置也可以工作
  • stepFilters: 在 debug 調試時,跳過指定的類或方法
    • classNameFilters: 跳過指定的類。類名應該完全限定,支持通配符
    • skipSynthetics: 跳過 synthetic 方法
    • skipStaticInitializers: 跳過靜態初始化方法
    • skipConstructors: 跳過構造方法

User Setting:

  • java.debug.logLevel: 發送到VS代碼的調試器日志的最低級別,默認為警告
  • java.debug.settings.showHex: 在變量視圖中以十六進制格式顯示數字,默認為false
  • java.debug.settings.showStaticVariables: 在variables視圖中顯示靜態變量,默認為true
  • java.debug.settings.showQualifiedNames: 在變量視圖中顯示完全限定的類名,默認為false
  • java.debug.settings.maxStringLength: 變量視圖或調試控制臺中顯示的最大字符串長度。超過此長度的字符串將被裁剪。默認值為0,表示沒有進行修剪
  • java.debug.settings.enableHotCodeReplace: 啟用Java源代碼的熱代碼替換。確保VScode 中的 Java 代碼沒有禁用自動構建。有關用法和限制的更多信息,請參閱 wiki page

遇到的問題:

  1. 找不到主類等方法

找不到構建路徑
等等一系列路徑問題
解決方法:
可能是項目有錯誤(如子項目同名)或緩存問題。
1、可以按Ctrl+Shift+P,輸入Java:Open Java Language Server Log file,查看日志文件來排錯。
2、 同時刪除C:\Users\AppData\Roaming\Code\CachedData目錄下的緩存,重新打開VS Code是就能正常識別java文件和生成調試配置了。 (如果路徑不對,就在日志文件里面找到路徑,刪除最新緩存(類似圖中一串英文數字的文件夾),重新打開VS Code。)

參考:

win10+vscode部署java開發環境

VSCODE 打造完美java開發環境

Visual Studio Code 搭建 Java 開發環境

Java in Visual Studio Code

配置vscode調試java代碼

VSCode搭建Java開發運行環境

Microsoft/vscode-java-debug

Debugging Java in Visual Studio Code

VS Code有哪些常用的快捷鍵?

轉載于:https://www.cnblogs.com/hongdada/p/10118381.html

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/450363.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/450363.shtml
英文地址,請注明出處:http://en.pswp.cn/news/450363.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

類的帶參方法有哪幾部分構成?

類的帶參方法有哪幾部分構成&#xff1f; 發布于2015-11-08 12:27 main函數可以不帶參數,也可以帶參數&#xff0c;這個參數可以認為是 main函數的形式參數。C語言規定main函數的參數只能有兩個&#xff0c;還規定argc(第一個形參)必須是整型變量,argv( 第二個形參)必須是指向字…

新架構讓數據中心猶如PC

摘要&#xff1a;隨著VL2網絡拓撲結構帶來了對等帶寬&#xff0c;大量數據可以存放在遠方的數據中心&#xff0c;訪問起來卻猶如它們就在本地&#xff0c;這將對數據中心的架構產生重大影響。Todd Hoff參加了Hot Interconnects大會&#xff0c;對微軟VL2架構做了詳細解讀。CSDN…

mongodb分片概念和原理-實戰分片集群

一、分片分片是一種跨多臺機器分發數據的方法。MongoDB使用分片來支持具有非常大的數據集和高吞吐量操作的部署。問題&#xff1a;具有大型數據集或高吞吐量應用程序的數據庫系統可能會挑戰單個服務器的容量。例如&#xff0c;高查詢率會耗盡服務器的CPU容量。工作集大小大于系…

字符串的一些用法

一.Java字符串類基本概念在JAVA語言中&#xff0c;字符串數據實際上由String類所實現的。Java字符串類分為兩類&#xff1a;一類是在程序中不會被改變長度的不變字符串&#xff1b;二類是在程序中會被改變長度的可變字符串。Java環境為了存儲和維護這兩類字符串提供了 String和…

獲取BGR顏色的HSV值

import cv2import numpy as npgreen np.uint8([[[152, 245, 255]]]) # 輸入待轉換顏色的BGR值hsv_green cv2.cvtColor(green, cv2.COLOR_BGR2HSV)print(hsv_green)轉載于:https://www.cnblogs.com/LicwStack/p/10129505.html

HTTP 協議是無狀態協議,怎么理解

HTTP 是一個屬于應用層的面向對象的協議&#xff0c;HTTP 協議一共有五大特點&#xff1a;1、支持客戶/服務器模式&#xff1b;2、簡單快速&#xff1b;3、靈活&#xff1b;4、無連接&#xff1b;5、無狀態。 無連接 無連接的含義是限制每次連接只處理一個請求。服務器處理完客…

加入初創企業需要想清楚的幾個問題

摘要&#xff1a;加入一家初創企業是一段充滿冒險的旅程。沿途不會都是美景&#xff0c;更別忘了最初的夢想。 去初創公司面試&#xff0c;你一般會糾結于被問到什么問題。但更重要的是問自己&#xff1a;你下定決心在接下來的5年中“從頭再來”嗎&#xff1f;你能接受這份薪資…

類和對象的區別

類和對象的區別1&#xff0c;類是一個抽象的概念&#xff0c;它不存在于現實中的時間/空間里&#xff0c;類只是為所有的對象定義了抽象的屬性與行為。就好像“Person&#xff08;人&#xff09;”這個類&#xff0c;它雖然可以包含很多個體&#xff0c;但它本身不存在于現實世…

IIS服務器SSL證書安裝

在證書控制臺下載IIS版本證書&#xff0c;下載到本地的是一個壓縮文件&#xff0c;解壓后里面包含.pfx文件是證書文件&#xff0c;pfx_password.txt是證書文件的密碼。 友情提示&#xff1a; 每次下載都會產生新密碼&#xff0c;該密碼僅匹配本次下載的證書。如果需要更新證書文…

attempting to use incompatible return type 提示 解決

前些天發現了一個巨牛的人工智能學習網站&#xff0c;通俗易懂&#xff0c;風趣幽默&#xff0c;忍不住分享一下給大家。點擊跳轉到教程。 一、問題&#xff1a;方法返回類型上有紅線&#xff0c;提示信息&#xff1a;... attempting to use incompatible return type 要返回…

地圖市場三足鼎立:諾基亞官方確認與亞馬遜合作

摘要&#xff1a;諾基亞確認為亞馬遜新推出的平板提供地圖服務&#xff0c;至此地圖市場“三家分晉”的格局已趨明朗。 路透社之前曾報道稱亞馬遜在新版Kindle中將使用諾基亞提供的地圖服務。但直到今日&#xff0c;這則消息才得到雙方的確認。諾基亞方面確認將為亞馬遜提供地圖…

關于明晚即將發布的新款 iPad Pro,最大的亮點也許不是 Face ID

北京時間 10 月 30 日晚間 10 點&#xff0c;蘋果將會在美國紐約的布魯克林音樂學院舉行新品發布會。考慮到此前蘋果已經在 9 月的發布會上宣布了 Apple Watch Series 4 和 iPhone XS/Max、iPhone XR 等新品&#xff0c;因此蘋果此次的紐約發布會&#xff0c;大家的目光更多地投…

重載

編程中重載的定義:函數名相同,函數的參數列表不同(包括參數個數和參數類型)&#xff0c;至于返回類型可同可不同。重載是可使函數、運算符等處理不同類型數據或接受不同個數的參數的一種方法&#xff0c;關于重載一詞在詞義上有兩種不同的說法&#xff1a;多態&#xff1a;重載…

11. Container With Most Water

題意 給定n個非負整數\(a_1,a_2,...,a_n\),其中每個數表示坐標點\((i,a_i)\),i是數組下標,\(a_i\)是對應高度.尋找兩條線,使得兩條線構成的長方形面積最大,盛水最多. Example: Input: [1,8,6,2,5,4,8,3,7] Output: 49 解 暴力破解 對每種情況進行循環,計算對應的面積,同時保存最…

如何培養編程所需要的邏輯思維?

很少有人能單單通過所謂“邏輯思維”從復雜問題快速找到抽象的&#xff0c;如果有這樣的人&#xff0c;他的經驗&#xff0c;工具&#xff0c;方法和直覺通常起到比邏輯思維更重要的作用。寫代碼需要邏輯思維&#xff0c;但解決復雜問題更需要理解分析&#xff0c;寫代碼只是解…

jws 方式表格導出,excel文件導出,rest風格接口實現

前些天發現了一個巨牛的人工智能學習網站&#xff0c;通俗易懂&#xff0c;風趣幽默&#xff0c;忍不住分享一下給大家。點擊跳轉到教程。 一、思路&#xff1a;從數據庫表中查出list &#xff0c;封裝到 HSSFWorkook 中&#xff0c;再由HSSFWorkook 寫出到 File 中, 用 res…

先思再行 閉著眼睛編程

摘要&#xff1a;解決問題最重要的習慣不是一直盯著屏幕和編寫修改代碼&#xff0c;某些時候&#xff0c;阻止你成功的東西恰恰會是過于努力。這時候你需要暫停一下&#xff0c;平緩你的思緒&#xff0c;換一種方法或許能帶給你不一樣的效果。你會花多少時間思考如何編寫代碼&a…

javaScript復習

ES6字符串方法&#xff1a; //console.log(String.prototype);var str "abcdefabc";//console.log(str.includes("a"));//結果true//console.log(str.includes("abf"));//結果false//console.log(str.startsWith("d"));//false//cons…

STS的安裝教程-鵬鵬

STS全稱Spring Tools Suite。 簡介&#xff1a;Spring Tools Suite (STS)其實就是一個被包裝過的Eclipse&#xff0c;主要用于快速的開發Spring項目&#xff0c;我們不用再去編輯繁瑣的xml配置文件&#xff0c;而是由工具自動生成。STS有兩種安裝方式&#xff0c;一種是直接在E…

final的用法

final 根據程序上下文環境&#xff0c;Java關鍵字final有“這是無法改變的”或者“終態的”含義&#xff0c;它可以修飾非抽象類、非抽象類成員方法和變量。你可能出于兩種理解而需要阻止改變&#xff1a;設計或效率。 final類不能被繼承&#xff0c;沒有子類&#xff0c;f…