spring boot项目打包成war并在tomcat上运行的步骤

把spring-boot项目按照平常的web项目一样发布到tomcat容器下

一、修改打包形式

在pom.xml里设置 <packaging>war</packaging>

二、移除嵌入式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>

__________________________________________________________

第2种

<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-tomcat</artifactId>
<scope>provided</scope>
</dependency>

三、添加servlet-api的依赖

下面两种方式都可以,任选其一

<dependency>
    <groupId>javax.servlet</groupId>
    <artifactId>javax.servlet-api</artifactId>
    <version>3.1.0</version>
    <scope>provided</scope>
</dependency>

<dependency>
    <groupId>org.apache.tomcat</groupId>
    <artifactId>tomcat-servlet-api</artifactId>
    <version>8.0.36</version>
    <scope>provided</scope>
</dependency>

四、修改启动类,并重写初始化方法

我们平常用main方法启动的方式,都有一个App的启动类,代码如下:

@SpringBootApplication
public class Application {
    public static void main(String[] args) {
        SpringApplication.run(Application.class, args);
    }
}

我们需要类似于web.xml的配置方式来启动spring上下文了,在Application类的同级添加一个SpringBootStartApplication类,其代码如下:

/**
 * 修改启动类,继承 SpringBootServletInitializer 并重写 configure 方法
 */
public class SpringBootStartApplication extends SpringBootServletInitializer {

    @Override
    protected SpringApplicationBuilder configure(SpringApplicationBuilder builder) {
        // 注意这里要指向原先用main方法执行的Application启动类
        return builder.sources(Application.class);
    }
}

五、打包部署

在项目根目录下(即包含pom.xml的目录),在命令行里输入: 
mvn clean package即可, 等待打包完成,出现[INFO] BUILD SUCCESS即为打包成功。 
然后把target目录下的war包放到tomcat的webapps目录下,启动tomcat,即可自动解压部署。 
最后在浏览器中输入

http://localhost:[端口号]/[打包项目名]/

发布成功

原文地址:https://www.cnblogs.com/wudage/p/9158890.html

时间: 2024-08-24 04:01:53

spring boot项目打包成war并在tomcat上运行的步骤的相关文章

spring boot 在STS里将项目打包成war

spring boot通过在maven的pom.xml里面添加spring boot自带的打包插件,可以直接将项目打包成可执行的jar文件 <build> <plugins> <plugin> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-maven-plugin</artifactId> </plugin> </p

怎么将maven项目打包成war包

问题:我在eclipse上能运行,然后我想将这个maven项目打包成war然后放到另外一台机子上(其实是手动放在tomcat的webapp目录中),提供外部访问.现在问题是,一直maven项目打包一直出错.请问大侠怎么将maven打包好?万分感谢 回答1:右键项目,选择Run As,再选择Maven build...,这时会弹出个新界面,在Goals里输入clean package,然后点击Run就行了,打包好的项目放在target文件夹下面.clean package是maven的一个命令,意

Spring Boot项目打包方式为war

spring boot项目默认是使用内嵌的tomcat打包为jar的方式,我们可以进行一些修改让其打包方式为war包: 修改maven的pom.xml <packaging>war</packaging> 然后将内嵌的tomcat依赖修改为: <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web-tomc

idea将maven项目打包成war包的方式,以及使用war包

打包WAR过程 首先对项目进行编译.然后执行以下步骤: 单击下图红色方框处  在IDEA右侧出现maven project选项  单击maven project选项,出现Spring MVC Basic Feature菜单,选择 其中的Lifecycle菜单项,展开,执行里面的package命令即可.  到这打包已完成,在项目文件夹/target/下可以找到 *.war 文件. 将war文件部署到tomcat上 我们采用一种比较简单的部署方式: 将war文件拷贝到tomcat安装目录的$TOMC

IntelliJ IDEA下spring boot项目打包

Spring Boot自带Tomcat插件,可以直接编写启动类,开启Tomcat服务 springboot适合前后端分离,打成jar进行部署更合适 application.properties配置端口 server.port=8089 marven的配置文件pom.xml <?xml version="1.0" encoding="UTF-8"?> <project xmlns="http://maven.apache.org/POM/4

javaweb项目打包成war包

从来没有想过web项目还能打包的,但是有要求,就不得不去实现,在网上找了一下,发现挺简单的. 首先是使用MyEclipse将web项目打包,如下图所示. 右键选中项目,选择export. 然后选择J2EE->WAR File.点击next 接下来制定war包的存放路径,我们将它放在卓面上. 打包完成以后我们将war放到tomcat的webapps目录下. 然后运行tomcat,并输入项目的url就可以了.和正常的web文件同样对待.

Java Web 项目打包成 .war 包

从来没有想过web项目还能打包的,但是有要求,就不得不去实现,在网上找了一下,发现挺简单的. 首先是使用MyEclipse将web项目打包,如下图所示. 右键选中项目,选择export. 然后选择J2EE->WAR File.点击next 接下来制定war包的存放路径,我们将它放在卓面上. 打包完成以后我们将war放到tomcat的webapps目录下. 然后运行tomcat,并输入项目的url就可以了.和正常的web文件同样对待. 北京哪里找富婆包养 海淀哪里找富婆包养 东城哪里找富婆包养 西

Maven项目打包成war包并启动war包运行

1 项目打包 1.1 右键点击所需要打包的项目,点击如图所示 Maven clean,这里 Maven 会清除掉之前对这个项目所有的打包信息. 1.2进行完 Maven clean 操作后,在eclipse的控制台会出现以下的信息. 1.3然后我们重新右键所需打包的项目,点击如图所示 maven build... 1.4 在弹出的界面中,进行如下图的操作. “Goals”输入框中输入 -X package,同时勾选下方 Update Snapshots 和 Skip Tests 选项框 1.5

Spring boot 项目 打包后,运行时一直报错误,但是本地项目跑的时候没有问题

打包出问题,,源头就是 打包的时候  可能没有将依赖的包打进去. <dependency> <groupId>com.microsoft.sqlserver</groupId> <artifactId>sqljdbc4</artifactId> <scope>4.0</scope> <version>4.0</version></dependency><scope>卸载上面会