Windows 下后台启动 jar 包,UTF-8 启动 jar 包
后台-插件-广告管理-内容页头部广告(手机) |
目录
- 1. Windows 下启动 jar 包
- 2. 设置 cmd 编码(注册表)
- 3. UTF-8 编码启动 jar 包
- 4. 设置 cmd 编码(脚本),utf-8 启动 jar 包
- 5. Windows 下关闭后台启动的服务
- 6. Windows 设置 jar 包开机自启动
- 7. Windows下杀死某一端口进程的脚本
1. Windows 下启动 jar 包
小贴士:打包的时候把 application.yml 所有内容都注释掉,然后打包,再把 application.yml 与打好的 jar 包放在同级目录下,如图所示。jar 包在启动的时候就会去读取此 application.yml 。
-
前台启动 jar 包:
java -jar swagger.jar
使用 java.exe 启动 jar 包,一旦把窗口关闭,就会结束进程- 1
-
后台启动 jar 包:
javaw -jar swagger.jar
使用 javaw.exe 启动 jar 包,并不会在窗口打印日志,而且会直接在后台运行进程,关掉窗口,进程继续跑- 1
关闭进程: 后台启动的 jar 包,直接在 jar 包所在目录打开 cmd ,输入 taskkill -f -t -im javaw.exe 就能关闭此 jar 进程
-
后台启动 jar 包脚本(start.bat):
@echo off start javaw -jar swagger.jar exit
当然,用脚本后台启动更方便,自定义名.bat- 1
- 2
- 3
-
后台关闭 jar 包脚本(stop.bat):
@echo off taskkill -f -t -im javaw.exe exit
自定义名.bat- 1
- 2
- 3
注意: 脚本要与 jar 包放在同级目录下,关闭脚本会关闭所有后台启动的 jar 包。
2. 设置 cmd 编码(注册表)
Windows 默认编码 GBK(936)
临时改变此 cmd 的编码为 UTF-8(重新打开会恢复为 GBK):
chcp 65001- 1
永久改变 cmd 为 UTF-8 编码:
-
打开注册表
- 方式一:win + r :regedit
- 方式二:
- 方式一:win + r :regedit
-
到达 HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Command Processor 目录下
-
右键——新建——字符串值
重命名:autorun -
双击修改数值数据
-
新打开 cmd,都是 65001 —— UTF-8 编码
3. UTF-8 编码启动 jar 包
前台启动:
java -jar -Dfile.encoding=UTF-8 swagger.jar- 1
后台启动:
javaw -jar -Dfile.encoding=UTF-8 swagger.jar- 1
后台启动 jar 包脚本(start.bat):
@echo off start javaw -jar -Dfile.encoding=UTF-8 swagger.jar exit- 1
- 2
- 3
后台关闭 jar 包脚本(stop.bat):
@echo off taskkill -f -t -im javaw.exe exit- 1
- 2
- 3
注意: 脚本要与 jar 包放在同级目录下,关闭脚本会关闭所有后台启动的 jar 包。
4. 设置 cmd 编码(脚本),utf-8 启动 jar 包
@echo off chcp 65001 start javaw -jar -Dfile.encoding=UTF-8 swagger.jar exit- 1
- 2
- 3
- 4
5. Windows 下关闭后台启动的服务
# 先根据端口号找到进程的 pid netstat -ano |findstr 端口号 # 然后用 taskkill 关闭该进程 taskkill /f /t /im pid- 1
- 2
- 3
- 4
6. Windows 设置 jar 包开机自启动
给上面写的启动脚本文件创建一个快捷方式,然后将快捷方式放到这个目录就行了:
C:\ProgramData\Microsoft\Windows\Start Menu\Programs\Startup
7. Windows下杀死某一端口进程的脚本
@echo off chcp 65001 setlocal enabledelayedexpansion set /p port=请输入端口号: for /f "tokens=1-5" %%a in ('netstat -ano ^| find ":%port%"') do ( if "%%e%" == "" ( set pid=%%d ) else ( set pid=%%e ) echo !pid! taskkill /f /pid !pid! ) pause- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 1
-
在9084端口跑一个服务
-
双击脚本,弹出cmd,并输入端口号杀死进程,任意键退出
-
再次查看端口占用
1.本站遵循行业规范,任何转载的稿件都会明确标注作者和来源;2.本站的原创文章,请转载时务必注明文章作者和来源,不尊重原创的行为我们将追究责任;3.作者投稿可能会经我们编辑修改或补充。
在线投稿:投稿 站长QQ:1888636
后台-插件-广告管理-内容页尾部广告(手机) |