SpringBoot專案如何打包部署到tomcat中去
SpringBoot專案如何打包成war包
最近朋友做了一個springboot的小專案,需要釋出到tomcat上去執行起來,但是打包的時候卻發現,只能打包成jar包的形式,無法打包成war包,今天把自己的解決方案寫下來,以供參考(eclipse版本):
一共有兩種解決方案:
方案一:
如果是新建的專案,那麼可以在一開始就選擇打包方式為WAR,這樣打包成的專案就是war包的形式。
檢視我們的pom.xml檔案:
此處的 provided代表了springboot自帶的tomcat在編譯的時候需要,而釋出的時候忽略。 |
這是第一種方案中打包war包的形式,以上這些步驟缺一不可,所以如果大家打包失敗,可以看看pom.xml檔案和啟動類的目錄是否與小編一致。
方案二:
如果現在的專案已經是一jar包的方式建好了的專案,可以對專案做出以下調整修改:
- 修改pom.xml檔案
1.修改打包方式:
<packaging>war</packaging>
2.除嵌入式tomcat外掛
在pom.xml裡找到spring-boot-starter-web依賴節點,在其中新增如下程式碼:
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
<!-- 移除嵌入式tomcat外掛 -->
<exclusions>
<exclusion>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-tomcat</artifactId>
</exclusion>
</exclusions>
</dependency>
3.新增servlet-api 的依賴:
dependency>
<groupId>javax.servlet</groupId>
<artifactId>javax.servlet-api</artifactId>
<version>3.1.0</version>
<scope>provided</scope>
</dependency>
4.定義打包的專案名稱(可不設定):
<build>
<finalName>SpringBoot_MyBatis</finalName>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
<configuration>
<testFailureIgnore>true</testFailureIgnore>
</configuration>
</plugin>
</plugins>
</build>
- 修改啟動類:
package com.demo;
import org.mybatis.spring.annotation.MapperScan;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.boot.builder.SpringApplicationBuilder;
import org.springframework.boot.web.servlet.support.SpringBootServletInitializer;
@SpringBootApplication
@MapperScan("com.demo.dao")
//繼承SpringBootServletInitializer類
public class SpringBootMybatisApplication extends SpringBootServletInitializer{
public static void main(String[] args) {
SpringApplication.run(SpringBootMybatisApplication.class, args);
System.out.println("啟動成功");
}
/**
*新增此方法
*/
@Override
protected SpringApplicationBuilder configure(SpringApplicationBuilder builder) {
// 注意這裡要指向原先用main方法執行的Application啟動類
return builder.sources(SpringBootMybatisApplication .class);
}
}
打包:
選中專案,右鍵–>Run AS --> Maven Install即可,找到打包好的war包,放入tomcat的webapps目錄下面,啟動即可。
注意:
我們的SpringBoot的專案訪問路徑為:http:ip/port/…後面的是requestMapping的值,而部署到了tomcat中訪問的地址應該為:http:ip/port/專案名稱/…
相關文章
- springboot專案部署到tomcat容器Spring BootTomcat
- 如何打包部署一個tomcat專案Tomcat
- springboot 專案部署到外部tomcatSpring BootTomcat
- 多個springboot專案部署到tomcat,Error deploying web application archiveSpring BootTomcatErrorWebAPPHive
- 將springboot部署到tomcatSpring BootTomcat
- Vue專案打包到django部署VueDjango
- Jenkins部署Web專案到遠端tomcatJenkinsWebTomcat
- springboot專案打包瘦身Spring Boot
- 如何將React專案,部署到Web伺服器的Tomcat 上ReactWeb伺服器Tomcat
- SpringBoot 專案如何在tomcat容器中執行Spring BootTomcat
- Centos8部署jdk、mysql8、tomcat,並部署專案到tomcat中CentOSJDKMySqlTomcat
- Tomcat部署web專案流程TomcatWeb
- 把spring-boot專案部署到tomcat中的方法SpringbootTomcat
- 【SpringBoot】三十二、SpringBoot專案Jar包如何瘦身部署Spring BootJAR
- SpringBoot手動部署到Tomcat和自動化熱部署Spring BootTomcat熱部署
- 配置springboot專案使用外部tomcatSpring BootTomcat
- SpringBoot專案在linux系統中的部署(直接部署、外接tomcat中部署)以及配置httpsSpring BootLinuxTomcatHTTP
- SpringBoot專案熱部署Spring Boot熱部署
- Docker部署SpringBoot專案DockerSpring Boot
- IDEA一鍵部署SpringBoot專案到伺服器IdeaSpring Boot伺服器
- Springboot2專案配置(熱部署+war+外部tomcat+外部配置檔案)Spring Boot熱部署Tomcat
- SpringBoot專案部署到Linux端Tomcat伺服器上,並直接通過域名訪問應用Spring BootLinuxTomcat伺服器
- SpringBoot專案部署到阿里雲伺服器全流程Spring Boot阿里伺服器
- 將普通web專案(FWGL 服務管理)用idea 部署到tomcatWebIdeaTomcat
- SpringBoot 監控、專案部署Spring Boot
- Tomcat 部署專案的三種方法Tomcat
- Spring Boot專案部署到外部TomcatSpring BootTomcat
- 專案部署到LinuxLinux
- Jenkins部署碼雲SpringBoot專案JenkinsSpring Boot
- 初學docker部署springboot專案DockerSpring Boot
- Docker(四)Docker部署SpringBoot專案DockerSpring Boot
- SpringBoot使用Docker快速部署專案Spring BootDocker
- Docker-Docker部署SpringBoot專案DockerSpring Boot
- Azure Devops實踐(5)- 構建springboot專案打包docker映象及容器化部署devSpring BootDocker
- 【前端打包部署】談一談我在SPA專案打包=>部署的處理前端
- 【動圖演示】笑眯眯地教你如何將 Scrapy 專案及爬蟲打包部署到伺服器爬蟲伺服器
- 如何將專案部署到伺服器上伺服器
- 使用springboot建立web專案,並使用外部TomcatSpring BootWebTomcat