springboot web項(xiàng)目打jar或者war包并運(yùn)行的實(shí)現(xiàn)
(一)springboot web項(xiàng)目打jar包
1、打包
兩種打包方式
maven命令打包
切換目錄到工程根下,pom.xml所在位置,運(yùn)行maven的打包命令
mvn clean package -Dmaven.test.skip=true
IDEA 工具執(zhí)行maven任務(wù)打包
會在xxx項(xiàng)目模塊下/target目錄下生成xxx-0.0.1-SNAPSHOT.jar
2、運(yùn)行jar包
啟動運(yùn)行(切換目錄到target下,執(zhí)行命令)
F:\Java\idea-workspace\shixun02\web1>cd springboot1
F:\Java\idea-workspace\shixun02\web1\springboot1>cd target
F:\Java\idea-workspace\shixun02\web1\springboot1\target>java -jar web1-0.0.1-SNAPSHOT.jar
注意:如果啟動springboot項(xiàng)目時(shí),想自己設(shè)置啟動服務(wù)器端口,命令如下:
java -jar web1-0.0.1-SNAPSHOT.jar --server.port=8081
(二)springboot web項(xiàng)目打war包,獨(dú)立部署到tomcat運(yùn)行
使用maven創(chuàng)建的springboot項(xiàng)目,默認(rèn)是jar包,springboot還有自己帶的tomcat?,F(xiàn)在需要將項(xiàng)目打包,并部署到服務(wù)器tomcat下面,步驟如下:
1.修改pom.xml文件。將jar修改為war。
<groupId>com.youzhong</groupId> <artifactId>web1</artifactId> <version>0.0.1-SNAPSHOT</version> <packaging>war</packaging>
2.在pom.xml文件中將build節(jié)點(diǎn)中設(shè)置finalName為server.context-path中的路徑。就是項(xiàng)目名稱(打包的名稱)。
<build> <plugins> <plugin> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-maven-plugin</artifactId> </plugin> </plugins> <finalName>web1</finalName> </build>
3. 在spring-boot-starter-web依賴中移除tomcat模塊。
<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> <exclusions> <exclusion> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-tomcat</artifactId> </exclusion> </exclusions> </dependency>
4. 添加servlet依賴。
<dependency> <groupId>javax.servlet</groupId> <artifactId>javax.servlet-api</artifactId> <version>3.1.0</version> <scope>provided</scope> </dependency>
5. 新建啟動類。(需要和之前的啟動類在同一級目錄)
public class SpringBootStartApplication extends SpringBootServletInitializer { @Override protected SpringApplicationBuilder configure(SpringApplicationBuilder builder) { // 注意這里要指向原先用main方法執(zhí)行的Application啟動類 return builder.sources(Web1Application.class); } }
注意:
Web1Application.class就是springboot生成的工程默認(rèn)啟動類
如:Web1Application.class即有@SpringBootApplication注解的主啟動類 。
6. 使用mvn命令打包
mvn clean package -Dmaven.test.skip=true
或者
使用IDEA中的maven任務(wù)
7. 將war包拷貝部署到tomcat的webapps目錄下面,啟動tomcat并測試。
相關(guān)文章
Spring Security 圖片驗(yàn)證碼功能的實(shí)例代碼
spring security是一系列的過濾器鏈,所以在這里驗(yàn)證碼也聲明為過濾器,加在過濾器鏈的 登錄過濾器之前,然后自定義一個(gè)異常類,來響應(yīng)驗(yàn)證碼的錯(cuò)誤信息.這篇文章主要介紹了Spring Security 圖片驗(yàn)證碼,需要的朋友可以參考下2018-03-03Mybatis plus 配置多數(shù)據(jù)源的實(shí)現(xiàn)示例
這篇文章主要介紹了Mybatis plus 配置多數(shù)據(jù)源的實(shí)現(xiàn)示例,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2020-08-08Java線程池如何實(shí)現(xiàn)精準(zhǔn)控制每秒API請求
這篇文章主要介紹了Java線程池如何實(shí)現(xiàn)精準(zhǔn)控制每秒API請求問題,具有很好的參考價(jià)值,希望對大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2024-08-08Java基本概念監(jiān)視器實(shí)習(xí)原理解析
這篇文章主要介紹了Java基本概念監(jiān)視器實(shí)習(xí)原理解析,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2020-08-08springboot解決使用localhost或127.0.01模擬CORS失效
CORS允許不同源的網(wǎng)頁請求訪問另一個(gè)源服務(wù)器上的某些資源,本文主要介紹了springboot解決使用localhost或127.0.01模擬CORS失效,文中通過示例代碼介紹的非常詳細(xì),需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2024-07-07