idea中,springboot多模块项目打war包

项目结构
项目结构
启动类所在pom修改为war包打包方式

<packaging>war</packaging>

父类pom中引入 build内容

<build>
    <!--<finalName>shopping-mall</finalName>-->
    <plugins>
        <!--打war包所需==========================start-->
        <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-compiler-plugin</artifactId>
            <version>3.1</version>
            <configuration>
                <source>${java.version}</source>
                <target>${java.version}</target>
            </configuration>
        </plugin>
        <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-surefire-plugin</artifactId>
            <version>2.22.2</version>
        </plugin>
        <!--maven打包排除spring-boot内嵌tomcat容器依赖jar-->
        <plugin>
            <artifactId>maven-war-plugin</artifactId>
            <configuration>
                <!--打包后的名称-->
                <warName>shopping-mall</warName>
                <packagingExcludes>
                    WEB-INF/lib/tomcat-embed-*.jar,
                    WEB-INF/lib/spring-boot-starter-tomcat-*.jar
                </packagingExcludes>
            </configuration>
        </plugin>
        <!--打war包所需==========================end-->
</build>

启动类型继承SpringBootServletInitializer,重写configure

package com.xxqy.shopping;

import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.boot.autoconfigure.jdbc.DataSourceAutoConfiguration;
import org.springframework.boot.builder.SpringApplicationBuilder;
import org.springframework.boot.web.servlet.support.SpringBootServletInitializer;
import org.springframework.context.annotation.ComponentScan;

/**
 * @Author yww
 * @CreateTime 2021-06-10
 */
@SpringBootApplication
public class ShoppingApplication extends SpringBootServletInitializer {

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

    @Override
    protected SpringApplicationBuilder configure(SpringApplicationBuilder builder) {
        return builder.sources(ShoppingApplication.class);
    }
}

去maven父模块下执行package
执行package
部署tomcat
部署成功

在IntelliJ IDEA 2023.4版本,创建一个模块Spring Boot项目的步骤如下: 1. **启动 IntelliJ IDEA**: 打开IntelliJ IDEA,选择 "Create New Project"。 2. **选择 Spring Initializr**: 在欢迎界面,点击 "Get Started",然后选择 "Create a new project from archetype"。在搜索框输入 "Spring Initializr",选择Spring Boot项目模板。 3. **配置项目基本信息**: 输入项目名称和描述,选择合适的项目位置。勾选 "Gradle" 或 "Maven" (通常推荐使用 Gradle),因为Spring Boot支持这两种构建工具。 4. **选择模块类型**: 在 "Project Settings"(或 "Settings"、"Preferences" 根据你的版本)里,选择 "Modules"。点击 "+" 创建新模块,可以选择以下模块类型: - **模块分层**: - 如果计划将项目划分为服务层(Service)、Web层(Web)、UI层(War/WebApp),可以分别创建这些模块。 - 例如:创建 "backend" (服务)、"api" (REST API) 和 "frontend" (前端Web应用)。 - **模块化依赖**: - 如果项目依赖较多,可以为每个独立的功能创建一个模块,如数据库访问、缓存、消息队列等。 5. **添加Spring Boot依赖**: 对于每个模块,添加所需的Spring Boot依赖,比如 "spring-boot-starter-web" 或 "spring-boot-starter-data-jpa" 等。在 "Dependencies" 选项卡下配置。 6. **配置模块间依赖**: 如果需要不同模块之间交互,例如API模块提供服务,UI模块调用服务,需要在对应模块的 dependencies 添加其他模块作为依赖。 7. **构建并运行**: 完成配置后,点击 "Finish",IntelliJ IDEA 将自动生成相应的目录结构和文件,并设置好构建脚本。此时可以通过 "Run" 或 "Debug" 按钮来启动和测试各个模块
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值