之前有几篇文章分别讲解了如何开发springcloud相关项目,今天这篇文章就来介绍一下spring boot 如何打包发布版本到最后的投产上线。
打jar包
springboot项目可以打成jar包或者war包,以前我们开发web项目基本都是打包成war包,然后放到web容器中运行,springboot自己集成了tomcat,可以直接打包运行,不需要再单独部署web应用服务器,而且打jar包很容易,对于基于maven的工程。
cd 项目根目录
mvn clean package
## 或者执行下面的命令
## 排除测试代码后进行打包
mvn clean package -Dmaven.test.skip=true
如果项目test目录下有单元测试代码,如果没有跳过test则必须要保证单测代码能执行通过,否则会一直报错无法执行通过。
打包完成后jar包会生成到target目录下,名称为工程名称+版本号,版本号在pom.xml中设置。
通过java -jar就可以启动jar包。
java -jar jar包路径/jar包名称
这样运行的坏处就是关闭窗口后,进程会停止运行,在linux中我们可以通过nohup命令来执行。
nohup java -jar jar包路径/jar包名称 &
一般生产项目我们都会在sprignboot中设置多个profile来区分不同环境的参数,启动的时候可以设置不同的profile让,springboot启动的时候使用不同的参数。
java -jar test.jar --spring.profiles.active=pre
生产运维
使用jinfo查看jvm当前运行的情况,来查看jar 启动后使用的是什么gc、新生代、老年代分批的内存都是多少
jinfo -flags pid
- XX:CICompilerCount :最大的并行编译数
- XX:InitialHeapSize 和 - XX:MaxHeapSize :指定JVM的初始和最大堆内存大小
- XX:MaxNewSize : JVM堆区域新生代内存的最大可分配大小
- XX:+UseParallelGC :垃圾回收使用Parallel收集器
重启应用
ps -ef|grep java
##找到对应sprigboot进程的pid
kill -9 pid
## 再次重启
Java -jar test.jar
springboot项目的运维是不是很简单。
网友评论