栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

bat文件注册为Windows服务与依赖关系设置

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

bat文件注册为Windows服务与依赖关系设置

文章目录

1. 批处理文件注册为服务

1.1 应用场景1.2 操作步骤

1.2.1 编写批处理文件;1.2.2 借助instsrv+srvany将批处理文件注册为服务;1.2.3 设置服务之间的依赖关系;1.2.4 启动测试 2. 配置服务之间的依赖关系

2.1 应用场景2.2 操作步骤 参考链接

1. 批处理文件注册为服务 1.1 应用场景

微服务架构下的jar包启动,一般都是通过命令行java -jar -Dfile.encoding=utf-8 %JAVA_OPTS% gateway.jar,这样的问题就是会出现一个控制台窗口,而且为了保证服务可用要一直开着控制台窗口,另外每次开机都需要手动开启服务。这对于用户来说不太友好。

可以将命令写到bat批处理文件中,然后将批处理文件注册为Windows服务,并设置为开机自启动。这样既实现了服务开机自启,同时也没有了控制台窗口,避免用户误触关闭。

1.2 操作步骤 1.2.1 编写批处理文件;

示例:Run_Gateway.bat

@echo off
echo.
echo [INFO] Startup gateway server
echo.

set JAVA_OPTS=-Xms512m -Xmx1024m -XX:metaspaceSize=128m -XX:MaxmetaspaceSize=512m

java -jar -Dfile.encoding=utf-8 %JAVA_OPTS% gateway.jar

pause
1.2.2 借助instsrv+srvany将批处理文件注册为服务;

关于instsrv和srvany可以参考最下面的链接1。

    将instsrv.exe和srvany.exe拷贝到C:Tools目录下以管理员身份运行cmd,切换到C:Tools目录下运行命令:instsrv MyService C:Toolssrvany.exe

注意:Myservice是自定义的服务的名称,可以根据应用程序名称任意更改

运行成功!

配置

    打开注册表:(cmd中输入:regedit)ctrl+F,搜索Myservice(之前自定义的服务名称)右击Myservice新建项,名称为Parameters之后在Parameters中新建几个字符串值

名称 Application 值:你要作为服务运行的程序地址。名称 AppDirectory 值:你要作为服务运行的程序所在文件夹路径。名称 AppParameters 值:你要作为服务运行的程序启动所需要的参数。

之后启动服务Myservice即可后台运行bat文件

1.2.3 设置服务之间的依赖关系;

参考第2章节配置服务之间的依赖关系

1.2.4 启动测试

设置完成后,可以在服务管理器中先手动启动一次,之后每次电脑开机后会自动启动。

2. 配置服务之间的依赖关系

2.1 应用场景

部分服务之间有依赖关系,或者说是有先后的启动顺序,如服务Run_Gateway必须在数据库服务MySQL启动后再启动。这时候就需要给服务Run_Gateway添加依赖配置。

2.2 操作步骤
    以管理员身份运行cmd;执行命令
sc config "Run_Gateway" depend= "MySQL"

表示Run_Gateway服务依赖于MySQL服务。

参考链接

[1]. 2种方法教你,如何将exe注册为windows服务,直接从后台运行[2]. WinServer配置服务依赖关系[3]. cmd批处理bat命令根据端口号一键关闭杀死对应进程程序

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/749579.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号