通用jar包部署脚本
在《Linux下部署Spring Boot 项目 jar包》中,小编介绍了一步一步发布jar包的方法,这里提供一个通用Shell脚本,傻瓜式发布Spring Boot项目。
通过WinSCP把jar文件上传到服务器:
通用启动脚本
将通用Shell脚本命名为start.sh,并把脚本上传至jar所在目录, 脚本内容如下:
#######################
#脚本使用方法:
#把本脚本和jar包放在同一目录下,保证当前目录有且仅有一个jar包,无需修改任何东西。
#######################
CurrentPath=`pwd`
CurrentDirName=`basename $(pwd)`
if ls *.jar &> /dev/null ;then
if [ `ls *.jar | wc -l` -eq 1 ];then
APP_NAME=`find $CurrentPath -maxdepth 1 -name "*.jar"`
else
echo -e "\033[31m------ Error! Too Much JAR Packages In This Directory !\033[0"
exit 2
fi
else
echo -e "\033[31m------ Error! No JAR Package In Current File !\033[0"
exit 1
fi
is_exist() {
pid=`ps aux | grep $APP_NAME | grep -v grep | grep "jar$"| awk '{print $2}'`
if [ -z "$pid" ];then
return 1
else
return 0
fi
}
start () {
is_exist
if [ $? -eq 0 ];then
echo "${APP_NAME} is already running. pid=${pid} ."
else
nohup java -jar $APP_NAME &> nohup.$CurrentDirName &
fi
}
stop () {
is_exist
if [ $? -eq 0 ];then
kill $pid
else
echo "${APP_NAME} is not running"
fi
}
status () {
is_exist
if [ $? -eq 0 ];then
echo "${APP_NAME} is running. Pid is ${pid}"
else
echo "${APP_NAME} is not running"
fi
}
case $1 in
start)
start;;
stop)
stop;;
restart)
stop
start;;
status)
status;;
*)
echo "Usage: $0 {start|stop|status|restart} "
esac
执行通用shell脚本
在脚本所在目录,执行如下Linux命令即可启动项目:
sh start.sh start
关于本文内容,大家有什么看法?欢迎留言讨论,也希望大家多多点赞关注。楼兰胡杨祝各位生活愉快!工作顺利!
读后有收获,小礼物走一走,请作者喝咖啡。

作者:楼兰胡杨
本文版权归作者和博客园共有,欢迎转载,但请注明原文链接,并保留此段声明,否则保留追究法律责任的权利。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· SQL Server 2025 AI相关能力初探
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
2018-08-26 Java 二进制数据转成文件