一个SpringBoot项目,打包部署步骤:
1、首先我们知道SpringBoot项目是有启动类的(比如XXXApplication),然后我们在启动的时候不需要配置tomcat,只需要启动这个类即可。所以一般是打成jar包,我们的项目也是maven管理的,有父项目和子项目,其中启动类是在xx-web这个子项目中的 。
2、打包
在idea的Terminal 窗口输入命令即可打包
mvn clean -DskipTests=true package
3、上传jar包,将web目录下的jar包上传到linux服务器(上传目录根据自己项目配置的来),然后把application.yml 以及数据库相关的配置文件都上传上来,和jar包在同一个目录下
4、执行命令,启动项目
需要在jar包对应的目录下,执行命令
一般情况下使用:nohup java -jar xxx.jar &
这个是我们自己项目使用到的:nohup java -jar -Dlogging.config=./logback-spring.xml jar包 >/dev/null 2>&1 &
/dev/null代表的是不输出日志
-Dlogging.config=./logback-spring.xml 日志输出的根据此xml中的配置的来
需要注意一点的是,在项目中用到的第三方jar包,需要在我们项目中手动添加,那么在打包的时候需要在pom中配置SpringBoot的插件才行,否则第三方jar包打不到项目中,导致项目运行的时候会有问题,具体配置如下:
<build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
<configuration>
<includeSystemScope>true</includeSystemScope>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.5.1</version>
<configuration>
<source>1.8</source>
<target>1.8</target>
</configuration>
</plugin>
</plugins>
</build>
其实启动命令不止这一个,只是我用到的暂时是这个,也可以根据自己需要写脚本的方式,或自行百度其他方式。同时需要提醒的是,这个是第一次启动的时候,如果是更新项目版本的时候,需要强制杀死该进程,然后在执行命令启动项目
查询进程:
netstat -anp|grep 启动端口号
杀死进程:
kill -9 进程号