Java程序注册为Windows系统服务
Posted pp_crz_coder
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Java程序注册为Windows系统服务相关的知识,希望对你有一定的参考价值。
前段时间,总监提出将数据库中的数据通过接口发送给客户方。需要将Java程序注册为Windows系统服务,定时传送数据。总监提出用.NET写一个系统服务,将数据传送给客户是个不错的解决办法,出于对.NET了解甚少的无奈,没有选择这个解决方案。费了九牛二虎之力,终于找到了如何将Java程序注册为Windows系统服务。
话不多说,直接上方案:
一、下载第三方工具:Windows Service Wrapper(下载地址:https://github.com/kohsuke/winsw/relases)
下载WSW:
二、下载好该.exe文件后,还需要一个.xml配置文件配合使用。注意:该.exe文件和.xml文件的文件名应保持一致:
如何配置SendMessageToCustomer.xml文件?信息如下:
1 <service> 2 <!-- 该服务的唯一标识 --> 3 <id>SendMessageToCustomer</id> 4 <!-- 注册为系统服务的名称 --> 5 <name>SendMessageToCustomer</name> 6 <!-- 对服务的描述 --> 7 <description>Send the data to customer</description> 8 <!-- 将java程序添加到系统服务 --> 9 <executable>java</executable> 10 <!-- 执行的参数 --> 11 <arguments>-jar "SendMessageToCustomer.jar"</arguments> 12 <!-- 日志模式 --> 13 <logmode>rotate</logmode> 14 </service>
三、将下载好的WinSW.NET2.exe修改为SendMessageToCustomer.exe。并将SendMessageToCustomer.exe、SendMessageToCustomer.xml和打好的jar包SendMessageToCustomer.jar放在同一个目录下。
四、利用管理员权限运行cmd,进入该目录,执行SendMessageToCustomer.exe install,将该jar程序注册为Windows系统服务。打开服务页面,可以发现:
在服务中多了一个SendMessageToCustomer的服务,打开该服务并执行启动。该服务即可正常执行了。
以上是关于Java程序注册为Windows系统服务的主要内容,如果未能解决你的问题,请参考以下文章
将java程序注册成windows服务自启动并异常退出自动重启
将java程序注册成windows服务自启动并异常退出自动重启