vscode開發(fā)maven的javaweb項(xiàng)目并部署到tomcat及配置指南
1、安裝并配置JAVA環(huán)境
我的是用的jdk1.8.0_181(安裝自行解決,直接可以下載免安裝配置環(huán)境)
配置JAVA_HOME,設(shè)置路徑為C:\Program Files\Java\jdk1.8.0_181,
添加bin到path環(huán)境變量:
2、安裝Maven
1)官網(wǎng)下載并解壓
(Maven – Download Apache Maven):
解壓到電腦,我解壓到C盤,如下圖所示:
手動建立maven-repo文件夾,如上圖紅框所示。
2)配置settings.xml
配置<localRepository>C:\apache-maven-3.8.6\maven-repo</localRepository>,路徑為剛剛新建的maven下的文件夾maven-repo的路徑,如下圖所示:
配置從阿里云下載(阿里云下載快一些),如下圖所示:
3)配置環(huán)境變量
配置M2_HOME和MAVEN_HOME,
如下圖所示:
將maven的bin目錄添加到path環(huán)境變量下,如下圖所示:
4)查看
配置完成后,控制臺輸入mvn -version,查看是否安裝成功
(配置完成maven后,如果打開了vscode,必須重新啟動vscode,否則cmd識別不到命令,我剛開始就是沒有重啟vscode,在maven package的時候就提示找不到package錯誤。)
3、安裝tomcat
請自行到tomcat官網(wǎng)下載,我下載的是apache-tomcat-9.0.69,解壓到C盤,如下圖所示:
點(diǎn)擊bin/startup.bat啟動,至于出現(xiàn)中文亂碼,主要是更改更改配置文件(conf/logging.properties將UT-8更改為GBK):java.util.logging.ConsoleHandler.encoding = GBK
4、環(huán)境配置完成,開始vscode寫代碼了
1)下載vscode插件
2)配置maven
在設(shè)置里面輸入maven,配置settings.xml(實(shí)際maven的settings.xml)路徑,如下圖所示:
3)配置tomcat
創(chuàng)建tomat server,如下圖所示,在Community Server Connector右鍵,選擇:
在彈出的頁面中,選擇如下圖所示:
然后選擇tomcat路徑,如下圖所示:
接下來配置根據(jù)情況,可以不配置,直接點(diǎn)擊"Finish"。
server就多了tomcat,如下圖所示:
在該Server上右鍵,即可實(shí)現(xiàn)相關(guān)操作
右鍵點(diǎn)擊”Start Server“,即開始啟動tomcat,如下圖所示:
啟動完成后,右鍵點(diǎn)擊”Server Actions...",選擇“Show in browser...",在選擇打開的網(wǎng)站”http://localhost:8080",即可打開tomcat網(wǎng)頁:
4)搭建項(xiàng)目
(1)創(chuàng)建rest風(fēng)格的項(xiàng)目(未打包成功,待研究,rest可參考第二種方式)
在(https://start.spring.io/)下創(chuàng)建SpringBoot初始項(xiàng)目,如下圖所示:
其他項(xiàng)目信息根據(jù)需要自行調(diào)節(jié),java版本與本地一致,我選的17。
【【【【【【
注意:3.0的項(xiàng)目jdk版本需要更新到17,前面所有環(huán)境變量與java jdk相關(guān)的需要更新。
下載bin包,解壓到相應(yīng)位置,設(shè)置環(huán)境變量即可。
然后在控制臺查看java版本,如下圖所示:
】】】】】】
項(xiàng)目下載完成后,解壓zip文件,用vscode打開,就是一個初始的spring rest項(xiàng)目。
如下圖所示:
如果不更改java版本,我用的java jdk是1.8,而項(xiàng)目創(chuàng)建的版本是17,因此,如果直接用maven的package,會出現(xiàn)如下錯誤:
中途vscode提示需要安裝什么,點(diǎn)擊安裝即可。
在\restapi\src\main\java\cn\scrs\restapi目錄下(根據(jù)實(shí)際更改)創(chuàng)建一個目錄controller,并在其中新建一個java文件HelloWorld.java,內(nèi)容如下:
package cn.scrs.restapi.controller; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RestController; @RestController public class HelloWorld { @RequestMapping("/helloworld") public String Hello(String desp) { return "Hello World!! " + desp; } }
如下圖所示:
直接點(diǎn)擊RestapiApplication.java,點(diǎn)擊運(yùn)行按鈕,即可運(yùn)行程序,如下圖所示:
運(yùn)行結(jié)果如下圖所示:
在瀏覽器輸入http://localhost:8080/helloworld?desp=first
表示成功。
打包方式與后面一致,參考后面內(nèi)容(打包后始終訪問不了,出現(xiàn)404問題,不知道為啥)。
打包輸出文件名稱更改,打開pom.xml文件,設(shè)置輸出名稱:
打包完成后,生成war包,如下圖所示:
(2)從marven原型創(chuàng)建項(xiàng)目
在VSCode同時按下ctrl+shift+p打開搜索,輸入maven,選擇從創(chuàng)建maven項(xiàng)目:
然后選擇項(xiàng)目類型為maven-archetype-webapp:
選擇完成后,配置版本號、輸入命名空間、保存路徑等,即開始創(chuàng)建項(xiàng)目,等待...,如下圖所示:
過程中,輸入回車,然后輸入Y即可,完成后,項(xiàng)目即創(chuàng)建完成。
打開項(xiàng)目,如下圖所示:
建立java和resources文件夾:
接下來配置restful格式(根據(jù)實(shí)際情況考慮是否需要):
打開pom.xml文件,引入rest包(版本號等根據(jù)需要,包根據(jù)需要):
<dependency> <groupId>com.sun.jersey</groupId> <artifactId>jersey-core</artifactId> <version>1.3</version> </dependency> <dependency> <groupId>com.sun.jersey</groupId> <artifactId>jersey-server</artifactId> <version>1.3</version> </dependency> <dependency> <groupId>com.sun.jersey</groupId> <artifactId>jersey-client</artifactId> <version>1.3</version> </dependency> <dependency> <groupId>log4j</groupId> <artifactId>log4j</artifactId> <version>1.2.14</version> </dependency> <dependency> <groupId>javax.ws.rs</groupId> <artifactId>jsr311-api</artifactId> <version>1.1.1</version> </dependency> <dependency> <groupId>asm</groupId> <artifactId>asm</artifactId> <version>3.2</version> </dependency>
如下圖所示:
配置src/main/webapp/web.xml文件,添加servlet對應(yīng)內(nèi)容:
<servlet> <servlet-name>restapi</servlet-name> <servlet-class>com.sun.jersey.spi.container.servlet.ServletContainer</servlet-class> <init-param> <param-name>com.sun.jersey.config.property.resourceConfigClass</param-name> <param-value>com.sun.jersey.api.core.PackagesResourceConfig</param-value> </init-param> <init-param> <param-name>com.sun.jersey.config.property.packages</param-name> <param-value>restapi</param-value> </init-param> <load-on-startup>1</load-on-startup> </servlet> <servlet-mapping> <servlet-name>restapi</servlet-name> <url-pattern>/*</url-pattern> </servlet-mapping>
如下圖所示:
注意幾個標(biāo)紅的地方,尤其是
<init-param> <param-name>com.sun.jersey.config.property.packages</param-name> <param-value>restapi</param-value> </init-param>
這是設(shè)置你的包名,所有的rest相關(guān)的類放在該包下。
在src/main/java目錄下新建restapi文件夾,作為restapi的包名(與上述配置一致),新建hellorest.java,代碼如下所示:
//包名,所有rest的包,與web.xml配置一致 package restapi; import javax.ws.rs.Path; import javax.ws.rs.GET; import javax.ws.rs.POST; import javax.ws.rs.DELETE; import javax.ws.rs.PUT; @Path("/hello") public class hellorest { @GET @Path("") public String HelloRest() { return "hello rest main"; } @GET @Path("get1") public String Get1() { return "hello rest get"; } @POST @Path("post1") public String Post1() { return "hello rest post"; } @PUT @Path("put1") public String Put1() { return "hello rest put"; } @DELETE @Path("del1") public String Delete1() { return "hello rest del"; } }
新建restapiroot.java,作為rest api的根,代碼如下所示:
package restapi; import javax.ws.rs.Path; import javax.ws.rs.GET; @Path("") public class restapiroot { @GET @Path("") public String RestapiRoot(){ return "rest api root"; } }
最后代碼如下圖所示:
完成后,安裝后面的打包,運(yùn)行,即可運(yùn)行。
運(yùn)行結(jié)果如下圖所示:
put、delete、post等自行測試。
5)運(yùn)行并打包項(xiàng)目為war文件
vscode中按ctrl+shift+p,然后輸入maven,選擇"執(zhí)行命令...",
然后選擇”package“,如下圖:
開始打包,打包完成后,生成war文件:
clean為清除,其他命令自行理解。
6)部署發(fā)布
在server上右鍵,點(diǎn)擊Add Deployment:
然后選擇”File“,并選擇剛剛生成的war路徑:
完成后,及添加到tomcat下了,如下圖所示:
server上右鍵點(diǎn)擊”Pulbic Server“:
完成后,完成了發(fā)布。
7)運(yùn)行
如果Server未啟動,先啟動Server,
Server上右鍵點(diǎn)擊”Server Actions...",依次做如下操作:
完成后,即啟動了,在瀏覽器中可查看:
這樣表示部署成功。
總結(jié)
到此這篇關(guān)于vscode開發(fā)maven的javaweb項(xiàng)目并部署到tomcat及配置的文章就介紹到這了,更多相關(guān)vscode開發(fā)maven的javaweb項(xiàng)目內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
springboot動態(tài)定時任務(wù)的實(shí)現(xiàn)方法示例
這篇文章主要給大家介紹了關(guān)于springboot動態(tài)定時任務(wù)的實(shí)現(xiàn)方法,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2021-02-02java后臺發(fā)起get請求獲取響應(yīng)數(shù)據(jù)
這篇文章主要為大家詳細(xì)介紹了java后臺發(fā)起get請求獲取響應(yīng)數(shù)據(jù),具有一定的參考價值,感興趣的小伙伴們可以參考一下2019-08-08Sharding-jdbc報(bào)錯:Missing the data source
在使用MyBatis-plus進(jìn)行數(shù)據(jù)操作時,新增Order實(shí)體屬性后,出現(xiàn)了數(shù)據(jù)源缺失的提示錯誤,原因是因?yàn)閡serId屬性值使用了隨機(jī)函數(shù)生成的Long值,這與sharding-jdbc的路由規(guī)則計(jì)算不匹配,導(dǎo)致無法找到正確的數(shù)據(jù)源,通過調(diào)整userId生成邏輯2024-11-11Javaweb使用thymeleaf局部刷新結(jié)合Layui插件實(shí)現(xiàn)Html分頁
本文主要介紹了Javaweb使用thymeleaf局部刷新結(jié)合Layui插件實(shí)現(xiàn)Html分頁,文中通過示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下2021-10-10使用spring-task定時任務(wù)動態(tài)配置修改執(zhí)行時間
這篇文章主要介紹了使用spring-task定時任務(wù)動態(tài)配置修改執(zhí)行時間,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2021-11-11java啟動時自定義配置文件路徑,自定義log4j2.xml位置方式
這篇文章主要介紹了java啟動時自定義配置文件路徑,自定義log4j2.xml位置方式,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2022-08-08SpringBoot整合RocketMQ實(shí)現(xiàn)發(fā)送同步消息
RocketMQ 是一款開源的分布式消息中間件,由阿里巴巴開源,它具有高可用性、高性能、低延遲等特點(diǎn),廣泛應(yīng)用于阿里巴巴集團(tuán)內(nèi)部以及眾多外部企業(yè)的業(yè)務(wù)系統(tǒng)中,本文給大家介紹了SpringBoot整合RocketMQ實(shí)現(xiàn)發(fā)送同步消息,需要的朋友可以參考下2024-04-04