前言
? ? ? ? 作為一個(gè)干了多年的全棧技術(shù)工程師,厭倦了使用盜版IDE,近些年開發(fā)Java一直使用IntelliJ IDEA進(jìn)行Springboot后端項(xiàng)目開發(fā),對(duì)于IntelliJ IDEA 授權(quán)問(wèn)題,一直花錢買學(xué)生類的授權(quán),但經(jīng)常被屏蔽,無(wú)法使用,又不舍得花大錢買企業(yè)版,索性不再使用了。決定改用 VsCode+Gradle+OpenJDK21進(jìn)行JAVA Spring Boot項(xiàng)目開發(fā),后續(xù)逐漸前后端都統(tǒng)一一套IDE工具。
? ? ? ? 一直以來(lái)JAVA項(xiàng)目都使用jdk1.8,這次也打算基于最新的openJdk21開啟新項(xiàng)目框架搭建,同時(shí)嘗試從maven轉(zhuǎn)向gradle構(gòu)建工具,開發(fā)工具也嘗試使用vscode。并把日常使用的小功能形成一個(gè) jo-java對(duì)外倉(cāng),把各種代碼塊傳入其中,方便自己,也分享給有需要的朋友。
? ? ? ? 前綴廢話有點(diǎn)多,可略過(guò),看下面的正題。
1、下載安裝 vscode
? ? ? 我的電腦安裝的是Visual Studio Code 1.83.1 system setup版。
? ? ? 若您未曾安裝,請(qǐng)到官網(wǎng)下載安裝: Visual Studio Code - Code Editing. RedefinedVisual Studio Code is a code editor redefined and optimized for building and debugging modern web and cloud applications.? Visual Studio Code is free and available on your favorite platform - Linux, macOS, and Windows.https://code.visualstudio.com/?
2、下載安裝 jdk(OpenJDK21)
? ? ? 請(qǐng)進(jìn)入OpenJDK官方網(wǎng)站下載:OpenJDK JDK 21.0.1 GA Releasehttps://jdk.java.net/21/? ? ?
? ? ? 下載后解壓到指定目錄,如:D:\JAVA\jdk21
? ? ? 設(shè)置JAVA環(huán)境變量:
#系統(tǒng)變量新增
JAVA_HOME
D:\JAVA\jdk21
CLASSPATH
.%JAVA_HOME%\lib;%JAVA_HOME%\lib\tools.jar
#系統(tǒng)變量PATH中增加
,%JAVA_HOME%\bin
? 打開命令窗口CMD,輸入:java -version 顯示以下結(jié)果表示jdk安裝、配置成功。
??
?注意:如果之前有安裝過(guò)其他版本jdk,需要清理java運(yùn)行的緩存,重啟后系統(tǒng)才能正常。一般在?C:\ProgramData\Oracle\Java 目錄下清理。
3、下載安裝 gradle(gradle 8.4)
? ? ? 請(qǐng)進(jìn)入gradle官方網(wǎng)站下載:
Gradle | ReleasesFind binaries and reference documentation for current and past versions of Gradle.https://gradle.org/releases/? ? ?
? ? ? ?下載后解壓到:D:\gradle\gradle-8.4
???????設(shè)置gradle環(huán)境變量:
# Gradle Home 環(huán)境變量
GRADLE_HOME
D:\gradle\gradle-8.4
# Gradle 倉(cāng)庫(kù)位置 環(huán)境變量
GRADLE_USER_HOME
D:\gradle\repositorys
#Path 中 增加
%GRADLE_HOME%\bin
? ? ? ?設(shè)置方式和結(jié)果如下:
4、VSCode中依次安裝所需要的插件
-
? ? ?4.1 所需VSCode插件
- Gradle for Java
- Gradle Language Support
- Extension Pack for Java
- Project Manager for Java
- Spring Boot Extension Pack
- Prettier - Code formatter(代碼格式化插件不需要可以不安裝)
? ? ?4.2 VSCode插件安裝方式
???????在VSCode中點(diǎn)擊左側(cè)欄“插件”圖標(biāo),搜索要安裝的插件,如:“Gradle for Java”,點(diǎn)擊Install執(zhí)行安裝。
5、新開發(fā)環(huán)境測(cè)試
5.1 創(chuàng)建一個(gè)SpringBoot項(xiàng)目
依次按以下步驟在VSCode中創(chuàng)建基于Gradle的Java SpringBoot項(xiàng)目:
快捷鍵:Ctrl + Shift + P 輸入:gradle 如下圖選擇跟我一樣的藍(lán)色條目選項(xiàng):Create a Gradle Project
選擇 Springboot 版本:我這里選擇3.1.5版
輸入項(xiàng)目包組名 Group Id:我這里輸入 com.duihao
輸入包名:我這里輸入 jojava
選擇構(gòu)建包類型:一般選擇 jar
選擇項(xiàng)目引用的JAVA組件:這里我選Spring Web、Lombok、Spring Boot DevTools等
???????至此,一個(gè)SpringBoot項(xiàng)目在VSCode中g(shù)radle模式下創(chuàng)建成功,如下圖:
5.2 項(xiàng)目開發(fā)配置調(diào)優(yōu)
在 build.gradle 文件中增加國(guó)內(nèi) maven 倉(cāng)庫(kù)地址,優(yōu)化組件加載速度。
常用國(guó)內(nèi)maven倉(cāng)庫(kù)地址:
? ? //阿里
? ? maven { url 'https://maven.aliyun.com/nexus/content/groups/public/' }
? ? //騰訊
? ? maven { url 'https://mirrors.cloud.tencent.com/nexus/repository/maven-public/' }
? ? //華為
? ? maven { url 'https://developer.huawei.com/repo/' }
在 .vscode 目錄中 創(chuàng)建 settings.json 文件 并增加以下配置,避免多jdk、gradle版本沖突。
???????完成后關(guān)閉vscode重新打開項(xiàng)目。如果.gradle目錄中已經(jīng)有很多文件,將這里的文件全部刪除,再重新打開vscode,這時(shí)會(huì)根據(jù)剛才配置的重新創(chuàng)建。
將Spring Boot項(xiàng)目配置文件類型改為yml格式,默認(rèn)創(chuàng)建的 Spring Boot 項(xiàng)目配置文件類型為.properties格式,建議進(jìn)行修改。
在項(xiàng)目資源目錄下找到 src/resources/application.propertices 進(jìn)行修改即可。
5.3?VScode下SpringBoot項(xiàng)目構(gòu)建
? ? ? ?方法一:使用Gradle命令打包構(gòu)建工程:
# 直接進(jìn)行打包
gradle build
# 刪除build及已經(jīng)構(gòu)建完的文件,然后再打包。我常用這個(gè)??梢源虬黬ar,也可以打包war
gradle clean build
? ? ? ? 方法二:使用VSCode可視化操作執(zhí)行Gradle構(gòu)建:
點(diǎn)擊左側(cè)菜單欄Gradle小圖標(biāo),在項(xiàng)目目錄下展開Tasks/build,(1)點(diǎn)擊 build執(zhí)行打包,為增量模式,(2)點(diǎn)擊clean執(zhí)行清理,然后點(diǎn)擊build全新打包。每次修改項(xiàng)目配置后都需要重新build才能生效。
? ? ? ? ? ?
5.4 VSCode下SpringBoot項(xiàng)目運(yùn)行
???????方法一:使用Gradle的bootRun插件可視化操作:
點(diǎn)擊左側(cè)菜單欄 Gradle 小圖標(biāo),在項(xiàng)目目錄下展開Tasks/application,點(diǎn)擊 bootRun執(zhí)行項(xiàng)目運(yùn)行。?
????????方法二:使用Spring Boot 控制臺(tái)插件進(jìn)行項(xiàng)目運(yùn)行:
點(diǎn)擊左側(cè)菜單欄 Spring Boot Dashboard 小圖標(biāo),在?APPS 項(xiàng)目右側(cè) 點(diǎn)擊 運(yùn)行小圖標(biāo),執(zhí)行項(xiàng)目運(yùn)行。
6、解決VSCode+SpringBoot+gradle的運(yùn)行命令窗口的中文亂碼
? ? ? ?找了很多種方法終于相互結(jié)合解決掉java新版jdk在vscode、gradle、springboot相互造成的中文亂碼問(wèn)題,以下是多個(gè)地方對(duì)編碼UTF-8設(shè)置的配置,有些電腦可能設(shè)置一處即可,有些可能需要設(shè)置多處可用。
6.1 第一處 VSCode setting.json
VSCode setting.json中的設(shè)置:通過(guò)點(diǎn)擊右下角設(shè)置圖標(biāo),點(diǎn)擊“Settings”進(jìn)入設(shè)置界面,從
中找到“Edit in setting.json”點(diǎn)擊進(jìn)入setting.json編輯模式。
?
?在setting.json 最后json塊加入以下代碼
"terminal.integrated.profiles.windows": {
"PowerShell": {
"source": "PowerShell",
"icon": "terminal-powershell",
"args": ["-NoExit", "/c", "chcp 65001"]
},
"Command Prompt": {
"path": [
"${env:windir}\\Sysnative\\cmd.exe",
"${env:windir}\\System32\\cmd.exe",
],
"args": ["-NoExit", "/c", "chcp 65001"],
"icon": "terminal-cmd"
},
"Git Bash": {
"source": "Git Bash"
}
}
? ? ? ? 結(jié)果如下:
6.2?第二處 項(xiàng)目編碼配置
在項(xiàng)目資源目錄下?src/main/resources找到配置文件 application.yml或application.properties文件,配置 server.servlet.encoding.charset、server.tomcat.uri-encoding 為 UTF-8,兩種配置文件格式配置方式有所不同,下圖為 yml格式內(nèi)容。
?6.3?第三處 Gradle運(yùn)行虛擬機(jī)編碼
在項(xiàng)目主目錄下gradlew.bat中,找到大約第37行,增加 "-Dfile.encoding=UTF-8",如下:
set DEFAULT_JVM_OPTS="-Xmx64m" "-Xms64m" "-Dfile.encoding=UTF-8"
?6.4?第四處 Windows語(yǔ)言編碼
???????在其他方法都無(wú)效情況下,直接進(jìn)行終極處理,設(shè)置操作系統(tǒng)語(yǔ)言編碼。這里僅針對(duì)Windows11系統(tǒng),其他系統(tǒng)并未測(cè)試有效性。
打開Windows“語(yǔ)言設(shè)置”,點(diǎn)擊“管理語(yǔ)言設(shè)置”
在“管理語(yǔ)言設(shè)置”界面中點(diǎn)擊“更改系統(tǒng)區(qū)域設(shè)置”,在 下面的 選框中 選中,點(diǎn)擊確定,重啟操作系統(tǒng)。
結(jié)尾
???????寫代碼20多年了,第一次對(duì)外公開分享,希望能幫助到有需要的人,不足之處,請(qǐng)多多指教。后續(xù)將持續(xù)分享更多經(jīng)驗(yàn),期待朋友們的鼓勵(lì)。文章來(lái)源:http://www.zghlxwxcb.cn/news/detail-771638.html
???????相關(guān)代碼會(huì)持續(xù)上傳到這里:?jojava: 一些常用的java代碼塊集合 (gitee.com)https://gitee.com/duihao/jojava文章來(lái)源地址http://www.zghlxwxcb.cn/news/detail-771638.html
到了這里,關(guān)于JAVA新實(shí)戰(zhàn)1:使用vscode+gradle+openJDK21搭建java springboot3項(xiàng)目開發(fā)環(huán)境的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!