SpringBoot项目的两种发布方式(jar包和war包)

发布时间:2024年01月15日

SpringBoot项目的两种发布方式(jar包和war包)

springboot入门和项目示例这个项目和application.yml配置端口号和访问url路径基础上进行修改

1、使用jar包方式发布

1.1、在pom.xml中添加一个SpringBoot的构建的插件

<build>
        <plugins>
            <plugin>
                <groupId>org.springframework.boot</groupId>
                <!--自动检测项目中的 main 函数-->
                <artifactId>spring-boot-maven-plugin</artifactId>
            </plugin>
        </plugins>
    </build>

1.2、在maven视图中,双击“package”,在target中会产生xxx.jar包

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

1.3、将生成的jar包复制到任意文件夹中,通过java -jar 命令运行该jar包

在这里插入图片描述
浏览器访问结果如下:
在这里插入图片描述

2、使用war包方式发布

2.1、在pom.xml文件中将jar修改为war

<packaging>war</packaging>

2.2、设置tomcat启动器依赖范围

<dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-tomcat</artifactId>
            <!--tomcat启动器依赖范围-->
            <scope>provided</scope>
        </dependency>

2.3、设置war包的名字

<plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-war-plugin</artifactId>
    <configuration>
        <warName>hello</warName>
    </configuration>
</plugin>

2.4、修改启动类

package cn.fpl;
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
public class SpringbootHelloworldApp extends SpringBootServletInitializer {
    @Override
    protected SpringApplicationBuilder configure(SpringApplicationBuilder builder) {
        return builder.sources(SpringbootHelloworldApp.class);
    }

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

2.5、先双击clean后,再确保项目可以正常运行后,双击packag进行打包

在这里插入图片描述
在这里插入图片描述

2.6、将生成的war包放到本机tomcat安装目录下的webapps目录下

在这里插入图片描述

2.7、返回bin目录找到startup.bat双击打开运行tomcat服务器,或直接管理员身份在webapps目录下打开命令行运行

在这里插入图片描述
可以发现,运行的war包可以通过自定义的url名字进行访问,服务器端口并不是在application.yml中配置的端口8090,而是本机的tomcat服务器的端口8080

上面时两种打包发布和运行的方式,希望可以帮助到大家!!!

文章来源:https://blog.csdn.net/qq_62124267/article/details/135610974
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。