欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

java运行jar包参数(java完整安装教程)

程序员文章站 2023-11-16 23:03:46
java项目开发完毕打好jar包,就需要把该jar包上传到linux上去运行,如果老哥使用windows当我没说⁄(⁄ ⁄•⁄ω⁄•⁄ ⁄)⁄。我们想到的可能就是通过 java -jar platfo...

java项目开发完毕打好jar包,就需要把该jar包上传到linux上去运行,如果老哥使用windows当我没说⁄(⁄ ⁄•⁄ω⁄•⁄ ⁄)⁄。

我们想到的可能就是通过 java -jar platform-scm-v108.jar 的方式来运行jar包,程序运行正常,但是运行期间窗口被锁定。当我们关闭窗口或ctrl + c打断程序运行时,程序就会退出;停止时会先通过 ps -ef | grep platform-scm-v108.jar 找出jar包的进程,然后再kill掉。这样太繁琐了,下面就根据线上经验总结下jar优雅启动、停止的步骤:

1 linux启动jar包的方式

1.1 简单后台启动

java -jar platform-scm-v108.jar --spring.profiles.active=product --server.port=8080 &

说明:& 表示后台运行,ssh窗口不被锁定,但是关闭窗口时,程序还是会退出;

1.2 不挂断后台启动

nohup java -jar platform-scm-v108.jar --spring.profiles.active=product --server.port=8080 &

说明:nohup 表示不挂断运行命令行,当账号退出或关闭终端时,程序仍然运行,当用 nohup 命令执行作业时,该作业的所有输出被重定向到nohup.out的文件中,除非另外指定了输出文件。

1.3 不挂断后台启动并重定向日志

nohup java -jar platform-scm-v108.jar --spring.profiles.active=product --server.port=8080 >/data/platform/log/platform-scm.txt &

说明:>
/data/platform/log/platform-scm.txt platform-scm.txt文件中

2 停止jar包

2.1 简单两步走

ps -ef | grep platform-scm-v108.jar
# 找到对应的进程然后杀掉
kill -9 进程号

说明:分两步,操作繁琐;

2.2 一条指令停止法

kill -9 `ps -ef | grep platform-scm-v108.jar | grep -v 'grep' `

说明:两次使用管道,排除其他进程,直接杀掉相应的进程。

3 线上环境脚本参考

3.1 启动脚本

nohup java -jar nt-scm-module-system-2.4.3.jar --spring.profiles.active=product --server.port=8080 &

3.2 停止脚本

kill -9 `ps -ef | grep nt-scm-module-system-2.4.3.jar | grep -v 'grep' `

3.3 重启脚本

kill -9 `ps -ef | grep nt-scm-module-system-2.4.3.jar | grep -v 'grep' `
sleep 2
nohup java -jar nt-scm-module-system-2.4.3.jar --spring.profiles.active=product --server.port=8080 &
sleep 2
tail -f nohup.out