java|java 包部署 2021-01-13
1. Jar 包启动
【java|java 包部署 2021-01-13】(窗口启动: jar -jar: 命令行启动,窗口停留)
下面介绍后台启动方式
1.1 Linux
java -jar xxx.jar &
- 说明: 在末尾加入 & 符号
-
jar -jar, ctrl+z
(1)执行java -jar xxx.jar后
(2)ctrl+z 退出到控制台,执行 bg
(3)exit
完成以上3步,退出SHELL后,jar服务一直在后台运行。 -
nohup java -jar xxxx.jar & (推荐)
(1) 输出日志:nohup java -jar babyshark-0.0.1-SNAPSHOT.jar > log.file 2>&1 &
上面的2 和 1 的意思如下:
0标准输入(一般是键盘)
1标准输出(一般是显示屏,是用户终端控制台)
2标准错误(错误信息输出)
- kill process
1. netstat -anp查看PID(process id)
2. kill -9 pid
关于netstat 命令:
-a (all)显示所有选项,netstat默认不显示LISTEN相关
-t (tcp)仅显示tcp相关选项
-u (udp)仅显示udp相关选项
-n 拒绝显示别名,能显示数字的全部转化成数字。(重要)
-l 仅列出有在 Listen (监听) 的服務状态-p 显示建立相关链接的程序名(macOS中表示协议 -p protocol)
-r 显示路由信息,路由表
-e 显示扩展信息,例如uid等
-s 按各个协议进行统计 (重要)
-c 每隔一个固定时间,执行该netstat命令。过滤:
Linux:netstat -anp| grep 3306
1.2 Window
- 新建 .bat文件
@echo off
start javaw -jar xxx.jar
exit
- 参数设定
@echo off
start javaw -jar -Dspring.config.location=C:\TestPlatform8083\application.properties C:\TestPlatform8083\TestPlatform-===.jar
exit
- 偶尔还需要指定编码格式,-Dfile.encoding=utf-8
如果想要指定Log日志
@echo off
start java -jar -Xms8000m -Xmx8000m -Xmn4000m test.jar > log\batchLog%date:~0,4%%date:~5,2%%date:~8,2%.log
exit
- @echo off 当执行失败的时候,不打印失败的信息
如果是调试阶段,可以将这一段注掉 - @pause 是会弹出命令行窗口,提示“请按任意键继续...”,不需要暂停的脚本,就把这一行注释掉
- 需要指定java 启动内存的大小
java -jar -Xms8000m -Xmx8000m -Xmn4000m test.jar
- 杀进程
- 查询过滤:
window: netstat -ano|findstr "3306" - 如要杀nginx.exe进程,命令如下:
taskkill /im nginx.exe /f
NOTE: /f在这里意为强制结束进程 - 也可以使用pid杀:
taskkill /pid {pid}
- 流风雨情. (2020). java jar后台启动的三种方式
- 刘信坚的博客. (2018). Java -jar 如何在后台运行项目
推荐阅读
- JAVA(抽象类与接口的区别&重载与重写&内存泄漏)
- 喂,你结婚我给你随了个红包
- CET4听力微技能一
- 事件代理
- 放下心中的偶像包袱吧
- 社保代缴公司服务费包含哪些
- Java|Java OpenCV图像处理之SIFT角点检测详解
- java中如何实现重建二叉树
- 数组常用方法一
- Beego打包部署到Linux