Springboot jar文件如何打包zip在linux环境运行
这篇文章主要介绍了Springbootjar文件如何打包zip在linux环境运行,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
1.添加打包配置文件
1.1assembly.xml
bin zip true lib ${project.build.directory}/bin /bin 0777 ${project.build.directory}/conf /conf 0644
1.2serverStatus.sh
#!/bin/sh if[!-n"$JAVA_HOME"];then exportJAVA_HOME="/export/server/jdk1.8.0_141" fi APP_MAIN=${application.main.class} PID=0 getPID(){ javaps=`$JAVA_HOME/bin/jps-l|grep$APP_MAIN` if[-n"$javaps"];then PID=`echo$javaps|awk'{print$1}'` else PID=0 fi } getServerStatus(){ getPID echo"================================================================================================================" if[$PID-ne0];then echo"$APP_MAINisrunning(PID=$PID)" echo"================================================================================================================" else echo"$APP_MAINisnotrunning" echo"================================================================================================================" fi } getServerStatus
1.3shutdown.sh
#!/bin/sh if[!-n"$JAVA_HOME"];then exportJAVA_HOME="/export/server/jdk1.8.0_141" fi APP_MAIN=${application.main.class} PID=0 getPID(){ javaps=`$JAVA_HOME/bin/jps-l|grep$APP_MAIN` if[-n"$javaps"];then PID=`echo$javaps|awk'{print$1}'` else PID=0 fi } shutdown(){ getPID echo"================================================================================================================" if[$PID-ne0];then echo-n"Stopping$APP_MAIN(PID=$PID)..." kill-9$PID if[$?-eq0];then echo"[Success]" echo"================================================================================================================" else echo"[Failed]" echo"================================================================================================================" fi getPID if[$PID-ne0];then shutdown fi else echo"$APP_MAINisnotrunning" echo"================================================================================================================" fi } shutdown
1.4startup.sh
#!/bin/sh #------------------------------------------------------------------------------------------------------------- #该脚本的使用方式为-->[shstartup.sh] #该脚本可在服务器上的任意目录下执行,不会影响到日志的输出位置等 #------------------------------------------------------------------------------------------------------------- if[!-n"$JAVA_HOME"];then exportJAVA_HOME="/export/server/jdk1.8.0_141" fi #------------------------------------------------------------------------------------------------------------- #系统运行参数 #------------------------------------------------------------------------------------------------------------- DIR=$(cd"$(dirname"$0")";pwd) APP_HOME=${DIR}/.. CLASSPATH=$APP_HOME/conf APP_LOG=${APP_HOME}/logs APP_CONFIG=${APP_HOME}/conf/application.yml APP_MAIN=${application.main.class} JAVA_OPTS="$JAVA_OPTS-server-Xms512m-Xmx512m-Xmn128m-XX:ParallelGCThreads=20-XX:+UseConcMarkSweepGC-XX:MaxGCPauseMillis=850-XX:+PrintGCDetails-Xloggc:$APP_LOG/gc.log-Dfile.encoding=UTF-8" JAVA_OPTS="$JAVA_OPTS-DlogPath=$APP_LOG" JAVA_OPTS="$JAVA_OPTS-Dconf.config=file:${APP_CONFIG}" echo"JAVA_HOME="$JAVA_HOME echo"CLASSPATH="$CLASSPATH echo"JAVA_OPTS="$JAVA_OPTS #------------------------------------------------------------------------------------------------------------- #程序开始 #------------------------------------------------------------------------------------------------------------- forappJarin"$APP_HOME"/lib/*.jar; do CLASSPATH="$CLASSPATH":"$appJar" done PID=0 getPID(){ javaps=`$JAVA_HOME/bin/jps-l|grep$APP_MAIN` if[-n"$javaps"];then PID=`echo$javaps|awk'{print$1}'` else PID=0 fi } startup(){ getPID echo"================================================================================================================" if[$PID-ne0];then echo"$APP_MAINalreadystarted(PID=$PID)" echo"================================================================================================================" else echo-n"Starting$APP_MAIN" if[!-d"$APP_LOG"];then mkdir"$APP_LOG" fi nohup$JAVA_HOME/bin/java$JAVA_OPTS-classpath$CLASSPATH$APP_MAIN& foriin$(seq5) do sleep0.8 echo-e".\c" done getPID if[$PID-ne0];then echo"(PID=$PID)...[Success]" echo"================================================================================================================" else echo"[Failed]" echo"================================================================================================================" fi fi } startup
1.5run.bat
titleface-server @echooff rem##############设置延迟环境变量扩充,即感叹号间的值不会因跳出循环而为空值。################ setlocalenabledelayedexpansion rem###############java命令###################### setJAVA=%JAVA_HOME%\bin\java.exe rem###############jvm参数###################### setOPTS=-Xms512M-Xmx512M-XX:+AggressiveOpts-XX:+UseParallelGC-XX:NewSize=64M rem###############agent启动类参数###################### setserverMain=cn.micropattern.face.Application echoJAVA:%JAVA% echoCLASSPATH:%CP% echoOPTS:%OPTS% java%OPTS%-cp"../lib/*;../conf"%serverMain% PAUSE
执行完命令后zip包在target文件路径下生成
3.linux启动服务
上传并解压zip包
启动成功
4.测试
测试成功
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持毛票票。
声明:本文内容来源于网络,版权归原作者所有,内容由互联网用户自发贡献自行上传,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任。如果您发现有涉嫌版权的内容,欢迎发送邮件至:czq8825#qq.com(发邮件时,请将#更换为@)进行举报,并提供相关证据,一经查实,本站将立刻删除涉嫌侵权内容。