Spring Boot项目打war包(idea:多种方式)

简介: Spring Boot项目打war包(idea:多种方式)

Spring Boot项目打war包(idea:多种方式)

前言:在idea中,经常会对web项目进行打jar包或者war包。jar包在Java环境中运行,war包在Tomcat服务器中跑。对于打war包有多种方式,一下介绍3钟方式。

打jar包参考:maven 打jar包:mvn clean package

方式一:使用maven工具直接打包:

(几个关键点图中已经标出)


方式二:使用打包命令:mvn clean package

一、修改pom.xml文件将默认的jar方式改为war:

<!--默认为jar方式-->
<!--<packaging>jar</packaging>-->
<!--改为war方式-->
<packaging>war</packaging>

二.修改pom.xml,添加外部Tomcat依赖配置(两种方式均可):

(本人使用第一种)
 

1.添加依赖

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

2.排除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>

三、继承SpringBootServletInitializer,实现configure方法(两种方式均可):

1.新增加一个类继承SpringBootServletInitializer实现configure:

public class ServletInitializer extends SpringBootServletInitializer {
    @Override
    protected SpringApplicationBuilder configure(SpringApplicationBuilder builder) {
        //此处的Application.class为带有@SpringBootApplication注解的启动类
        return builder.sources(UserApplication.class);
    }
}

2.启动类继承SpringBootServletInitializer实现configure:

@SpringBootApplication
public class UserApplication extends SpringBootServletInitializer {
    public static void main(String[] args) {
        SpringApplication.run(UserApplication.class, args);
    }
    @Override
    protected SpringApplicationBuilder configure(SpringApplicationBuilder builder) {
        return builder.sources(UserApplication.class);
    }
}

四、使用mvn clean package打包

在cmd中,先把命令行切换到Maven项目的根目录,如:D:\微服务架构\ch3 ,执行打包命令:

clean是清除之前的包,-Dmaven.test.skip=true是忽略测试代码
mvn clean package -Dmaven.test.skip=true

方式三:手动打包:

(在这里手动打包,具体略)

目录
相关文章
|
Java 应用服务中间件 API
Servlet开发流程 (里面有Idea项目添加Tomcat依赖详细教程)
本文详细介绍了Servlet的开发流程,包括在IntelliJ IDEA中添加Tomcat依赖的详细教程。通过上述步骤,开发者可以快速搭建并运行一个基本的Servlet应用,理解并掌握Servlet的开发流程对于Java Web开发至关重要。希望本文能够帮助开发者顺利进行Servlet开发,提高工作效率。
1875 78
|
监控 测试技术 开发者
IDEA项目调试你都会用了么,快看看是否有你不知道的调试技巧
在IntelliJ IDEA中,熟练运用调试工具可显著提升开发效率。通过设置断点、单步执行、变量监控等功能,快速定位问题并优化代码性能。此外,掌握多线程调试、异常处理及远程调试技巧也至关重要。为提高效率,建议合理使用条件断点、快捷键与日志监控,同时不断学习总结经验。若觉得有用,别忘了点赞收藏!
IDEA项目调试你都会用了么,快看看是否有你不知道的调试技巧
|
IDE Java 开发工具
【Java基础-环境搭建-创建项目】IntelliJ IDEA创建Java项目的详细步骤
IntelliJ IDEA创建Java项目的图文详细步骤,手把手带你创建Java项目
2370 10
【Java基础-环境搭建-创建项目】IntelliJ IDEA创建Java项目的详细步骤
|
数据安全/隐私保护
IntelliJ IDEA使用技巧:在一个项目中如何正确引用其他子模块。
我希望这个解答可以帮助你,有了这些知识,你可以更好地使用IntelliJ IDEA并轻松处理项目中的子模块。
1221 19
|
Java Maven
Idea配置项目的热启动
Idea配置项目的热启动
4335 5
Idea配置项目的热启动
|
Java Maven 开发者
编写SpringBoot的自定义starter包
通过本文的介绍,我们详细讲解了如何创建一个Spring Boot自定义Starter包,包括自动配置类、配置属性类、`spring.factories`文件的创建和配置。通过自定义Starter,可以有效地复用公共配置和组件,提高开发效率。希望本文能帮助您更好地理解和应用Spring Boot自定义Starter,在实际项目中灵活使用这一强大的功能。
1279 17
|
JavaScript 前端开发 Java
Idea启动SpringBoot程序报错:Veb server failed to start. Port 8082 was already in use;端口冲突的原理与解决方案
本文解决了Idea启动SpringBoot程序报错:Veb server failed to start. Port 8082 was already in use的问题,并通过介绍端口的使用原理和操作系统的端口管理机制,可以更有效地解决端口冲突问题,并确保Web服务器能够顺利启动和运行。 只有锻炼思维才能可持续地解决问题,只有思维才是真正值得学习和分享的核心要素。如果这篇博客能给您带来一点帮助,麻烦您点个赞支持一下,还可以收藏起来以备不时之需,有疑问和错误欢迎在评论区指出~
|
Java 应用服务中间件 Maven
SpringBoot项目打包成war包
通过上述步骤,我们成功地将一个Spring Boot应用打包成WAR文件,并部署到外部的Tomcat服务器中。这种方式适用于需要与传统Servlet容器集成的场景。
1933 8
|
前端开发 Java 应用服务中间件
IDEA中如何将一个JavaWeb项目打包成war包
1.Java的打包方式jar、war、ear包的作用、区别: jar:通常是开发时要引用通用(JAVA)类,打成包便于存放管理; war:是做好一个(web)应用后,通常是网站,打成包部署到容器中; ear: 企业级应用,实际上EAR包中包含WAR包和几个企业级项目的配置文件而已,一般服务器选择WebSphere等,都会使用EAR包。通常是EJB打成ear包。
1763 0
IDEA中如何将一个JavaWeb项目打包成war包
|
Java 应用服务中间件 Maven
Idea将SpringBoot项目打包成war包
Idea将SpringBoot项目打包成war包
712 0
Idea将SpringBoot项目打包成war包