win自启动jar包两种方式
  qOFSzrcgyRLd 2023年11月02日 39 0

方式一

将jar包做成exe服务,可以实现自启动的方式。

方式二

将jar使用bat脚本启动,再通过vbs脚本控制bat脚本后台启动,避免黑窗口的出现,进行开启自启动。

方式一:服务模式 环境安装,电脑需要安装Microsoft.NETFramework 4,如果有的话可以不安装

下载 WinSW.NET4.exe 和 sample-minimal.xml

将下载到两个文件放到jar包所在的目录中

重命名为和xxx.jar包同名的xxx.exe、xxx.xml两份文件

编辑xxx.xml文件

xxxxxxxxx微服务<envname="JAVA_HOME"value="%JAVA_HOME%"/>java-jar "%BASE%\xxx.jar"Automatic%BASE%\logrotate复制代码 在当前目录中进入CMD黑窗口,执行xxx.exe install命令,这样服务中已经存在了

WIN+R输入services.msc,就可以看到以xxx名字命名的服务

CMD黑窗口其它命令

安装服务

xxx.exe install

重启服务

xxx.exe restart

停止服务

xxx.exe stop

卸载服务

xxxx.exe uninstall

复制代码 到此为止,已完成服务自启动功能,以下是为了方便,也可以使用bat脚本启动

启动服务,新建start.bat文件,并编辑内容

@ECHO OFF

setlocal EnableDelayedExpansion

color 3e

黑窗口标题(仅注释,实际需要删除此内容)

title xxx

PUSHD %~DP0 & cd /d "%~dp0"

%1 %2

mshta vbscript:createobject("shell.application").shellexecute("%~s0","goto :runas","","runas",1)(window.close)&goto :eof

:runas

安装服务命令(仅注释,实际需要删除此内容)

xxx.exe install

启动服务命令(仅注释,实际需要删除此内容)

net start xxx

echo 执行完毕,任意键退出

pause >nul

exit

复制代码

停止服务,新建stop.bat文件,并编辑内容

@ECHO OFF

setlocal EnableDelayedExpansion

color 3e

黑窗口标题(仅注释,实际需要删除此内容)

title xxx

PUSHD %~DP0 & cd /d "%~dp0"

%1 %2

mshta vbscript:createobject("shell.application").shellexecute("%~s0","goto :runas","","runas",1)(window.close)&goto :eof

:runas

停止服务命令(仅注释,实际需要删除此内容)

net stop xxx

卸载服务命令(仅注释,实际需要删除此内容),是否需要卸载根据实际情况决定

xxx.exe uninstall

echo 执行完毕,任意键退出

pause >nul

exit

复制代码

方式二:脚本 在jar包同级目录下新建start.bat和stop.bat文件,并编辑内容

启动start.bat内容编辑

:: 指定字符集utf-8 chcp 65001 @echo off

title 准备启动设备驱动...................

color 3E

start javaw -Dfile.encoding=utf-8 -jar xxx.jar

echo . echo ------------ 正在启动 -------------- echo .

:: 10秒后启动完成 timeout /t 10 echo . echo ------------ 启动成功 -------------- echo .

timeout /t 2 exit

复制代码

停止stop.bat内容编辑

chcp 65001 @echo off

title 停止设备驱动

color 3E

taskkill -f -t -im javaw.exe

echo . echo ------------停止成功!-------------------- echo .

timeout /t 5

exit

复制代码

到了这一步,其实就可以实现后台启动了,但是并非开机自启动。想要实现还需创建init.vbs脚本执行,避免开启自启动时出现黑窗口

编辑init.vbs内容,最后的0表示cmd窗口隐藏运行,路径不要有中文

set ws=WScript.CreateObject("WScript.Shell") ws.Run "目标路径\start.bat /start",0复制代码 通过WIN+R输入shell:startup,打开win自启动文件夹目录

最后,将init.vbs快捷方式直接放到自启动文件夹目录中,这样就可以实现开机自启动功能

【版权声明】本文内容来自摩杜云社区用户原创、第三方投稿、转载,内容版权归原作者所有。本网站的目的在于传递更多信息,不拥有版权,亦不承担相应法律责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@moduyun.com

  1. 分享:
最后一次编辑于 2023年11月08日 0

暂无评论

推荐阅读
  2zFGj4r9I43q   2023年12月22日   29   0   0 JavajarJavajar