Windows 10和Linux脚本启动jar包服务器,并设置开机启动
现在好多Java服务和应用都是用jar启动,jar打包成的里面会直接带有tomcat,所以可以直接启动,但是如何通过脚本启动并且设置成开机自启动
这样可以省很多事情。方便省事
协议:CC BY-SA 4.0 https://creativecommons.org/licenses/by-sa/4.0/
版权声明:本文为原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接及本声明。
一、Windows10脚本自启动
1.前提是Java环境已经配置好,就是JDK已经安装完毕
Windows脚本
1.启动jar脚本
start.bat
@echo off
java -jar E:\java\mina_server_jar\mina_server.jar
2.停止jar脚本(如:jar包端口9090)
stop.bat
@echo off
set port=9090
for /f “tokens=1-5” %%i in (‘netstat -ano^|findstr “:%port%”’) do (
echo kill the process %%m who use the port
taskkill /pid %%m -t -f
goto q
)
:q
3.重启jar脚本(就是上面两个合起来)
restart.bat
@echo off
set port=9090
for /f “tokens=1-5” %%i in (‘netstat -ano^|findstr “:%port%”’) do (
echo kill the process %%m who use the port
taskkill /pid %%m -t -f
goto start
)
:start
java -jar E:\java\mina_server_jar\mina_server.jar
如何把bat服务加入到开机启动的行列
如果是想开机就启动的话有个简单的方法
C:\ProgramData\Microsoft\Windows\Start Menu\Programs\StartUp 将bat放入这里就可以了。
只想用任务计划启动的话,继续往下看
二、配置系统的计划任务
打开win10左下角的菜单栏,在搜索框内输入“任务计划”
001
打开任务计划后,在右边“操作”中找到“创建任务”
名称和描述随意输入,选择用户登录时运行,并且配置系统选择win10
002
切换选项卡到触发器,新建触发器,选择登录时,所有用户,然后确定
003
切换选项卡到“操作”,新建,操作选择启动程序,程序或者脚本填我们前面写好的.bat文件路径,然后确定
003
后面两个选项卡“条件”和“设置”是更加细粒度的条件设置,其中,在设置中,“允许按需允许任务”要打勾,方便测试,
其他的可以根据需求去设置,到这里已经满足我们的需求了,就不往下做了
到主面板就可以看到我们新增的计划了
003
右击任务,选择启动,弹出启动界面
注意:360或者安全管家记得放行,因为这些安全程序都提示拦截,记得放行,不要禁用
三、CentOS7.4中使用脚本启动jar文件
启动脚本
start.sh
nohup java -Xmx2g -Xms2g -Xss256k -XX:+DisableExplicitGC -XX:+UseConcMarkSweepGC -XX:+CMSParallelRemarkEnabled -XX:LargePageSizeInBytes=128m -XX:+UseFastAccessorMethods -XX:+UseCMSInitiatingOccupancyOnly -XX:CMSInitiatingOccupancyFraction=70 -Duser.timezone=GMT+8 -jar app-sdt.jar --spring.profiles.active=prod >/dev/null 2>&1 &
或者使用全量脚本
app-service.sh
#!/bin/bash
#source /etc/profile
Auth:Liucx
Please change these parameters according to your real env.
请把JAVA_HOME改成你自己的环境路径.
如果需要修改启动所需的配置文件修改 -Dspring.profiles.active=dev 指定环境.
set Java Home: Remember that dolphin only supports JDK8!
JAVA_HOME=/usr/java/jdk1.8.0_211
#JAVA_HOME=/usr/local/java/jdk1.8.0_11
application directory
cd dirname $0
APP_HOME=pwd
APP_NAME="cd ${APP_HOME} && find -name '*.jar'
"
JAR_HOME_TOW= A P P N A M E : 2 J A R H O M E = {APP_NAME:2} JAR_HOME= APPNAME:2JARHOME<