您好,欢迎来到三六零分类信息网!老站,搜索引擎当天收录,欢迎发信息

SpringBoot应用的打包和发布怎么实现

2025/4/30 18:27:13发布8次查看
1. 创建项目(example-fast)基于 spring boot 创建一个 web 项目 example-fast。
2. 编译打包2.1 采用 idea 集成的 maven 环境来对 spring boot 项目编译打包,可谓是超级 easy
2.2 mvn 命令打包
# mvn clean 清理编译# install 打包# -dmaven.test.skip=true 跳过单元测试# -p dev 指定dev配置mvn clean install -dmaven.test.skip=true -p dev
3. 应用发布3.1 一行命令的演化
运行 spring boot 打包之后的 jar 方式也简单,只需一行命令就行。
java -jar /usr/local/example-fast-1.0.0.jar
已经启动了服务,但关闭窗口会停止服务,所以需要考虑在后台运行并查看日志
java -jar /usr/local/example-fast-1.0.0.jar > example-fast.out &
执行启动时,效果如下,然后就可以轻松看日志输出了。
如果项目组中你既是研发又充当运维的角色,到这基本就完事儿了,因为相信通过熟练操作,会形成肌肉反应,你肯定能记住这一行命令。
不过,若是分工明确,生产权限隔离的话,一般都是运维同事来操作发布,所以还得想办法让运维同事省力,不得不考虑脚本化。
首先创建项目目录例如 example-fast,然后分别创建 bin、lib、logs 目录;把 example-fast-0.0.1-snapshot.jar 拷贝至 lib 目录下;bin 目录主要存放脚本。创建 start.sh 应用启动脚本; stop.sh 应用停止脚本
启动脚本(start.sh)
#!/bin/bash#配置 java 环境变量export java_home=/usr/local/java/jdk/jdk1.8.0_231export path=.:$java_home/bin:$path#定义应用名app_name=example-fast#定义应用所在目录app_path=/home/${app_name}#定义可执行文件的路径jar_path=${app_path}/example-fast-1.0.0.jar#jvm启动参数java_opts="-duser.timezone=gmt+8 -server -xms4096m -xmx4096m -xx:maxmetaspacesize=256m -xloggc:${app_path}/logs/${app_name}.gc.log -xx:+useconcmarksweepgc -xx:+usecmscompactatfullcollection -xx:cmsfullgcsbeforecompaction=5 -xx:+printgc -xx:+printgctimestamps -xx:+printgcdetails -xx:+printgcapplicationstoppedtime"#启动java进程函数current_count=`ps -ef|grep java |grep ${app_name} |grep -vc grep`if [ $current_count -eq 0 ]then log_name=$(echo ${app_name}|awk -f"-" '{ print $nf }') nohup java -dfunc_type=${app_name} $java_opts -dfile.encoding=utf-8 -jar $jar_path > ${app_path}/logs/${app_name}.out 2>&1 & process_id=`ps -ef | grep "${app_name}" |grep -v grep | awk '{ print $2 }'` echo " ☺☺☺☺☺启动应用 ${app_name} 成功,进程 id 为 ${process_id} ☺☺☺☺☺ "else echo " ☺☺☺☺☺ 应用 ${app_name} 已经被启动了 ☺☺☺☺☺ "fi
# 执行应用启动 start.shsh start.sh
停止脚本(stop.sh)
#!/bin/bash# 定义应用名称app_name=example-fast# 停止java进程函数echo " ☺☺☺☺☺ 开始停止 ${app_name} 应用 ☺☺☺☺☺ "ps -ef | grep ${app_name} | grep -v grep | awk '{print$2}' | xargs killecho " ☺☺☺☺☺ 应用 ${app_name} 停止成功!☺☺☺☺☺ "
# 执行应用停止 stop.shsh stop.sh
以上就是springboot应用的打包和发布怎么实现的详细内容。
该用户其它信息

VIP推荐

免费发布信息,免费发布B2B信息网站平台 - 三六零分类信息网 沪ICP备09012988号-2
企业名录 Product