Linux停止jar包进程方式

简介

这篇文章主要介绍了linux如何停止jar包进程问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教,

提供两种方式关闭进程:

  • 知道端口号;
  • 知道jar包名称

1.知道端口号,停止进程

(1)根据端口号获取进程编号PID

netstat -lnp|grep 端口号

比如:

我端口为9201的进程对应的PID为29464

(2)根据PID杀死进程

kill -9 PID

比如:

2.知道jar包名称,停止进程

(1)根据jar包名称获取进程编号PID

ps aux|grep jar包名称

比如

我jar包名称为iiot-modules-system.jar的进程对应的PID为29464

(2)根据PID杀死进程

kill -9 PID

比如:

一、windows启动jar包命令

命令放到 bat文件中

1、普通启动

title XXX
chcp 65001
java -Dfile.encoding=utf-8  -jar XXX.jar

加上-Dfile.encoding=utf-8后,不乱码

加上chcp 65001后,日志的中文不乱码

注:这种方式启动后,窗口不能关闭,关闭窗口,服务也关闭。

2、后台启动

@echo off
start "XXX" javaw -jar -Dfile.encoding=utf-8 XXX.jar
exit

注:这种方式启动后,无窗口。

将上面的命令保存成bat文件即可方便启动。

3、其他

日志打印:

java -Dfile.encoding=utf-8  -jar XXX.jar  >out.log  2>&1 &

关闭窗口:

%1 mshta vbscript:CreateObject("WScript.Shell").Run("%~s0 ::",0,FALSE)(window.close)&&exit

4、综合起来,最终的命令:

后台启动方式,没有日志:

@echo off
chcp 65001
start "XXX" javaw -jar -Dfile.encoding=utf-8 XXX.jar
exit

注意:

不需要在后面添加>out.log 2>&1 &,这样的写法,后台启动方式,日志输出不到文件中,会产生文件,但是out.log没有内容。

如果要输出日志到文件中,则用有窗口的启动方式,使用java -Dfile.encoding=utf-8 -jar XXX.jar >out.log 2>&1 & 的命令。如下

有窗口启动方式,有日志:

@echo off
chcp 65001
java -Dfile.encoding=utf-8  -jar XXX.jar  >out.log  2>&1 &
exit

会有一个黑窗口,显示了Active code page: 65001,日志打印到了out.log文件中。

后台启动方式,有日志:

@echo off
chcp 65001
%1 mshta vbscript:CreateObject("WScript.Shell").Run("%~s0 ::",0,FALSE)(window.close)&&exit
java -Dfile.encoding=utf-8  -jar XXX.jar  >log.log  2>&1 &
exit

特别说明:

如果服务有自定义日志,那么不需要额外打印到日志文件中,直接使用后台启动方式即可

@echo off
start "XXX" javaw -Dfile.encoding=utf-8  -jar xxx.jar
exit

指定命名空间:

java -jar -Xms256m -Dspring.cloud.nacos.discovery.namespace=fb4d22ff-0a57-44ff-a89d-c8db364cb79f -Dspring.cloud.nacos.discovery.server-addr=172.16.1.141:8848 -Dspring.cloud.nacos.config.namespace=fb4d22ff-0a57-44ff-a89d-c8db364cb79f -Dspring.cloud.nacos.config.server-addr=172.16.1.141:8848 -Dserver.port=18010 -Xmx512m mall-cloud-system-app.jar

二、windows停止jar命令

查看所有java进程:

tasklist | findstr "java"

查看某端口的java进程:

netstat -ano | findstr 8106

杀死某个pid的java任务:

taskkill /f /pid 4216

以上为个人经验,希望能给大家一个参考,也希望大家多多支持腾创网。 

以上本篇文章的全部内容了,感兴趣的小伙伴可以看看,更多精彩内容关注腾创网www.tengchuangw.com

© 版权声明
THE END
喜欢就支持一下吧
点赞10 分享
评论 抢沙发
头像
欢迎您留下宝贵的见解!
提交
头像

昵称

取消
昵称表情代码图片

    暂无评论内容