1. 程式人生 > >【VSCode】Windows下VSCode編譯執行簡單java

【VSCode】Windows下VSCode編譯執行簡單java

注意:這篇文章內容已經過時,請勿按此文章所介紹方法實踐,浪費時間後果自負。

先看效果:
這裡寫圖片描述

配置流程:

  1. JDK & JRE 的配置(不細講了網上一大堆)
  2. VSCode的下載安裝以及外掛cpptools的安裝(不細講了,見blackkitty的另一篇文章中的步驟1和2:Windows下VSCode編譯除錯c/c++
  3. launch.json與tasks.json的配置
  4. vsc_tasks_java.bat的配置
  5. 完了!

務必確保1,2步驟已經完成

3. launch.json的配置
首先開啟一個資料夾,新建一個java檔案,寫入程式碼:
這裡寫圖片描述
注意:程式碼第一行必須是執行時要啟動class的名字,格式為兩個斜槓加class名

然後按F5,選擇C++(GDB):
這裡寫圖片描述

將自動生成的launch.json內容替換為一下內容並儲存:

{
    "version": "0.2.0",
    "configurations": [
        {
            "name": "JAVA Launch",
            "type": "cppdbg",
            "request": "launch",
            "launchOptionType": "Local",
            "targetArchitecture": "x86",
            "program
": "${file}", "stopAtEntry": false, "cwd": "${workspaceRoot}", "externalConsole": true, "preLaunchTask": "cmd" } ]
}

切換至debug介面,點選除錯,注意這裡必須切換至debug介面(因為第一次要先選擇一個除錯型別),不能直接按F5,在第一次編譯執行後,以後的編譯執行可以直接按F5
這裡寫圖片描述

此時會彈出資訊框,點選”配置任務程式”:
這裡寫圖片描述

在這裡隨便選一個:
這裡寫圖片描述


然後用下面程式碼替換(注意看註釋,有些可以自己調整):

{
    "version": "0.1.0",
    "command": "cmd",
    "args": [
    "/c", "start", "cmd","/c",
    "vsc_tasks_java.bat",
    "hide:true",            //設為hide:true則會清除編譯資訊,否則將保留編譯資訊
    "${fileDirname}", 
    "${fileBasename}",
    "javac -Xlint:unchecked -encoding UTF-8 -g"     //javac預設部分編譯引數
    ]
}

4.vsc_tasks_java.bat的配置
將以下程式碼儲存為vsc_tasks_java.bat檔案,然後複製到C:\Program Files (x86)\Java\jdk1.8.0_91\bin\資料夾下,注意與你自己的jdk所在位置對應,並確保環境變數設定正確

::::::::VSCODE TASKS JAVA BY BLACKKITTY::::::::
@echo off
set jfdir=%2
set jf=%3
set jccmd=%~4
set jclassdir=%jfdir%\%jf%.class
set/p jstartclass=<"%jfdir%\%jf%">NUL
set jstartclass=%jstartclass:~2%
echo.jfdir:%jfdir%
echo.jf:%jf%
echo.jccmd:%jccmd%
echo.jclassdir:%jclassdir%
echo.jstartclass:%jstartclass%
echo.---------------------------
echo.CMD EXECUTE: mkdir "%jclassdir%"
if not exist "%jclassdir%" mkdir "%jclassdir%"
echo.CMD EXECUTE: %jccmd% -d "%jclassdir%" "%jfdir%\%jf%"
(%jccmd% -d "%jclassdir%" "%jfdir%\%jf%") || set jcerror=true
if "%jcerror%" EQU "true" (pause&goto:eof)
pushd "%jclassdir%"
echo.-----------CLASS-----------
dir /b *.class
echo.-----------CLASS-----------
echo.CMD EXECUTE: java "%jstartclass%"
echo.---------------------------
if "%1" EQU "hide:true" (cls)
java "%jstartclass%"
pause
goto:eof
::::::::VSCODE TASKS JAVA BY BLACKKITTY::::::::

完成後再次啟動除錯,可見程式成功編譯執行:
不顯示編譯資訊的:
這裡寫圖片描述
顯示編譯資訊的:
這裡寫圖片描述

6.完了!

再次宣告:vscode當前並不支援對java的除錯,此文僅是配置使用vscode編譯執行簡單java,blackkitty並不寫java所以此文僅供娛樂