最近需要将jar设置为开机自启,所以,查找了一些资料,有2种实现方式,1种是将jar包注册为服务,2是在开机菜单下添加批处理命令。
在Windows环境设置开机自启动jar包的核心思想就是把启动命令注册成一个服务,然后就可以设置开机自启动了。手写一个注册服务代码比较麻烦,可以借助线程的exe可执行文件来做。
首先去下载WinSW软件
地址:https://github.com/winsw/winsw/releases
下载最新版本红框内的两个文件。
把这两个文件复制粘贴到jar包的同目录下,改成相同的名字,例如web-start等。
修改xml文件
<service>
<!-- ID of the service. It should be unique across the Windows system-->
<id>web-start</id>
<!-- Display name of the service -->
<name>web-start</name>
<!-- Service description -->
<description>启动web服务</description>
<!-- Path to the executable, which should be started -->
<executable>java</executable>
<arguments> -Dfile.encoding=UTF-8 -Dloader.path="lib/" -jar wms-0.0.1-SNAPSHOT.jar</arguments>
</service>
然后打开cmd命令行窗口,到该目录下运行如下命令,看到如下并回到命令输入界面就代表安装成功了
web-start.exe install
cmd窗口
然后再服务中查找服务
之后去服务窗口找到同id的服务,就可以设置成自动并启动了。
启动完成后在同目录下会生成web-start.err.log、web-start.out.log和web-start.wrapper.log,分别对应错误日志、输入日志和exe软件日志。
有时候使用这种方式运行的jar包没有管理员权限,无法访问系统中的某些文件,这时候有两种方式:
第一种是去服务页面右键对应服务,属性,登录标签页,修改登录用户为系统管理员。
新建一个文本文档,使用文本编辑器写入
@echo off
start /b java -Dfile.encoding=UTF-8 -Dloader.path="lib/" -jar wms-0.0.1-SNAPSHOT.jar
更改文件名为start.bat,
创建快捷方式,
将快捷方式放入中即可。
C:\ProgramData\Microsoft\Windows\Start Menu\Programs\StartUp
完!
转载地址:
https://blog.csdn.net/shenjuntao520/article/details/106490533
本文系转载,前往查看
如有侵权,请联系 cloudcommunity@tencent.com 删除。
本文系转载,前往查看
如有侵权,请联系 cloudcommunity@tencent.com 删除。