spring boot 打包

spring boot 打包

第一种:打成jar包

第一步:启动文件如下所示,无需继承任何类,类上面的注解保留项目原有注解即可

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

第二步:修改pom文件中的如下

<packaging>jar</packaging>

第三步:pom文件中,检查引入包,是否只有spring-boot-starter-web,没有tomcat相关的包

<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-we![](https://img2020.cnblogs.com/blog/1266609/202101/1266609-20210129140536727-2061382258.png)

b</artifactId>
</dependency>

第四步:pom文件中,修改build信息,finalName:打包后的文件名,mainClass:指定启动类

<build>
    <finalName>wechatmessage</finalName>
    <plugins>
        <plugin>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-maven-plugin</artifactId>
            <configuration><!-- 指定该Main Class为全局的唯一入口 -->
                <mainClass>com.example.WechatmessageApplication</mainClass>
                <layout>ZIP</layout>
            </configuration>
            <executions>
                <execution>
                    <goals>
                        <goal>repackage</goal><!--可以把依赖的包都打包到生成的Jar包中 -->
                    </goals>
                </execution>
            </executions>
        </plugin>
    </plugins>
</build>

第二种:打成war包

第一步:启动类如下,需要继承SpringBootServletInitializer,类上面的注解保留项目原有注解即可

@SpringBootApplication
public class WechatmessageApplication extends SpringBootServletInitializer {
    
    @Override
    protected SpringApplicationBuilder configure(SpringApplicationBuilder builder) {
        return builder.sources(WechatmessageApplication.class);
    }

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

第二步:修改pom文件中的如下

<packaging>war</packaging>

第三步:修改pom文件,检查引入的包,需要排斥web自身的tomcat包,额外添加tomcat包

<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>
<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-tomcat</artifactId>
</dependency>

第四步:pom文件中,修改build信息,finalName:打包后的文件名

<build>
    <finalName>wechatmessage</finalName>
    <plugins>
        <plugin>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-maven-plugin</artifactId>
        </plugin>
    </plugins>
</build>

打包命令

完成上面的配置,执行maven打包命令,可得相应的jar包和war包

命令解释:clean:清理,compile:编译,package:打包,-Dmaven.test.skip=true:跳过测试

mvn  clean compile package -Dmaven.test.skip=true

执行位置:

第一种,用idea的maven命令窗口

第二种:在控制台输入打包命令

打包后的程序位置:

项目启动方式

第一种jar包

进入到jar包目录下,执行下面命令

java -jar 项目名.jar

第二种war:

将打出的war包放在tomcat的webapps下,启动tomcat即可,执行过程中war包自动解压

posted @ 2021-01-29 14:38  E炎灵  阅读(107)  评论(0编辑  收藏  举报