原创

Spring Boot(七)——部署

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/lyhkmm/article/details/78855725


打包成jar的方式:

windows环境:

1、到项目的根目录下(pom.xml同级)

2、通过mvn命令打包,需要配置好mvn的环境变量,或者直接是用mvn的绝对路径命令。也可通过开发工具打包,不同的开发工具打包方式不同,这里就不一一介绍了。

mvn clean package
## 去除测试代码的打包方式
mvn clean package  -Dmaven.test.skip=true

3、等待终端打包完成后且没有错误,出现如下图所示表示打包完成。 打包完成后jar包会生成到target目录下,命名一般是 项目名+版本号.jar.。


4、通过java命令启动:

java -jar target\demo-0.0.1-SNAPSHOT.jar

这种方式只要控制台关闭,服务就不能访问了,下面我们使用在后台运行的方式来启动。

windows环境:

有很多种方式添加到windows服务中,这里介绍使用JavaService.exe的方式。JavaService.exe在本文下方github地址可以下载。通过cmd执行下方命令,这里需要说明的是-start org.springframework.boot.loader.JarLauncher是启动类,有兴趣的朋友可以进入jar包看看目录结构,如下图:

cmd命令:

JavaService.exe -install SpringBootService "%JAVA_HOME%\jre\bin\server\jvm.dll" -Djava.class.path="%JAVA_HOME%\lib\tools.jar;E:\oneDriver\OneDrive\spring_boot_demo\target\demo-0.0.1-SNAPSHOT.jar" -start org.springframework.boot.loader.JarLauncher
执行完成后可以看到cmd终端输出:
The SpringBootService automatic service was successfully installed

删除服务的命令:

JavaService.exe -uninstall SpringBootService

然进入windows服务就可以看到对应的服务并对其操作,更多的JavaService的使用方式可以上网查阅。

linux环境:

使用nohup和连接符号 & 

java -jar target\demo-0.0.1-SNAPSHOT.jar &
停止的话可以直接使用kill命令杀死该进程,也可以通过脚本的方式添加的到系统服务,通过service命令起停。

打包成war发布到应用服务器上

1、修改pom.xml

<packaging>jar</packaging>
改为
<packaging>war</packaging>
2、添加tomcat的相关依赖
<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-tomcat</artifactId>
    <scope>provided</scope>
</dependency>
其中<scope>provided</scope>表示打包成war时不会包含它的jar包。发布在tomcat上时,tomcat会提供相关的api
3、添加启动类ServletInitializer
public class ServletInitializer extends SpringBootServletInitializer {
    @Override
    protected SpringApplicationBuilder configure(SpringApplicationBuilder application) {
        return application.sources(DemoApplication.class);
    }
}
4、最后使用maven或者开发工具打包

跟之前打包成jar的方式一样:

mvn clean package  -Dmaven.test.skip=true
war生成在target目录下
正文到此结束
Loading...