Atitit.Java exe bat 作为windows系统服务程序运行
Atitit.Java exe bat 作为windows系统服务程序运行
1. 使用SC命令+srvany.exe (不错,推荐)+net start1
1.4. 启动start/stop服务 Sc \\127.0.0.1 start ServicenameAti22
2. 1、修改注册表 主要有两种方法…… 还有一个好用的命令:sc delete+服务名3
3. ava Service Wrapper (jsw )3
1. 使用SC命令+srvany.exe (不错,推荐)+net start
1.1. First 创建一个java的运行bat
1.2. 配置srvany 做serv wrapper
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\ServicenameAti2\Parameters]
"Application"="\"D:/workspace 空格/AtiPlatf/makefile.bat\""
Srvany 可用于将任何EXE程序作为Windows服务运行。也就是说srvany只是其注册程序的服务外壳
可以接收服务的start stop命令..假如直接地使用bat exe,哪些马实现serv接口,不能rootv serv..
作者:: 绰号:老哇的爪子 ( 全名::Attilax Akbar Al Rapanui 阿提拉克斯 阿克巴 阿尔 拉帕努伊 ) 汉字名:艾龙, EMAIL:1466519819@qq.com
转载请注明来源: http://www.cnblogs.com/attilax/
1.3. 使用sc 创建/del服务
先进入命令行 (开始——〉运行——输入CMD),直接输入SC可以查看关于该命令的帮助。
如果要删除一个系统服务,可以使用 SC delete [服务名称],比如删除messager服务,输入SC DELETE MESSAGER。
SC使用这样的语法:
1. SC 《Servername》 command Servicename [Optionname= Optionvalue]
SC [command]
选项: 选项 <server> 的格式为 "\\ServerName"
注意: 选项名称包括等号。
等号和值之间需要一个空格。
C:\Users\Administrator>Sc \\127.0.0.1 create ServicenameAti binPath= "D:\work
ace 空格\AtiPlatf\makefile.bat" start= auto Displayname= "DisplaynameAti"
[SC] CreateService 成功
Sc \\127.0.0.1 delete ServicenameAti
Sc \\127.0.0.1 start ServicenameAti2
Displayname 这个参数是显示在的service管理器黑头的..
1.4. 启动start/stop服务 Sc \\127.0.0.1 start ServicenameAti2
C:\Users\Administrator> Sc \\127.0.0.1 start ServicenameAti2
SERVICE_NAME: ServicenameAti2
TYPE : 10 WIN32_OWN_PROCESS
STATE : 2 START_PENDING
(NOT_STOPPABLE, NOT_PAUSABLE, IGNORES_SHUTDOWN
WIN32_EXIT_CODE : 0 (0x0)
SERVICE_EXIT_CODE : 0 (0x0)
CHECKPOINT : 0x0
WAIT_HINT : 0x7d0
PID : 10308
FLAGS :
net start ServicenameAti2
net stop ServicenameAti2
But 这个不能stop whern serv stop...maybe check service start state timer...if stop then exit
2. 1、修改注册表 主要有两种方法…… 还有一个好用的命令:sc delete+服务名
在“开始→运行”中键入“regedit.exe”,打开“注册表编辑器”,展开分支“HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services”,在右侧窗格中显示的就是本机安装的服务项。
如果要新建服务,只须点击“编辑→新建→项”,然后为此项命名,如“test”;然后右击该项,选择“新建→字符串值”或“新建→DWORD值”即可。添加一个服务项目具体需要添加的键值如下
“DisplayName”,字符串值,对应服务名称;
“Description”,字符串值,对应服务描述;
“ImagePath”,字符串值,对应该服务程序所在的路径;
“ObjectName”,字符串值,值为“LocalSystem”,表示本地登录;
“ErrorControl”,DWORD值,值为“1”;
“Start”,DWORD值,值为2表示自动运行,值为3表示手动运行,值为4表示禁止;
“Type”,DWORD值,应用程序对应10,其它对应20。
另外,还要在“test”项下新建一个“Enum”项。按照以上步骤添加QQ程序为服务,重新启动计算机后,打开“服务”窗口,就可以看到刚才添加的QQ服务。
如果要删除某项服务,只要删除注册表的中相关键值即可,本例中要删除QQ服务,直接删除“HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\test”分支即可。
3. ava Service Wrapper (jsw )
翻开JBOSS、Tomcat的发布包,发现他们都使用了一个Open source——Java Service Wrapper。用Java Service Wrapper可以轻松解决我们的需求,让我们的服务程序成为 Win32系统服务。
JSW的使用有三种方式:
1.
用WrapperSimpleApp class启动应用程序。这是使用JSW最简单的方式,也是推荐的方式。但使用这种方式有个问题,因为JSW是直接使用System.exit()退出 JVM的,这等如使用者在应用程序运行期间直接按ctrl-c退出程序一样。如果应用程序在退出前需要执行clean up的话,需要自行登记shutdown hook,或不要使用这种方式。以这种方式配置JBoss的例子(Win32, Linux / UNIX)。
2.
3.
第二种方式是使用WrapperStartStopApp class。这种方式是给Tomcat之类的应用程序(即在一个类启动,但以另一个类结束的应用程序)。通常这类的应用程序都会在启动时打开一个 server socket,用来等待要求程序结束的连接,当接收到要求结束的请求,“结束”类会被执行。而JSW就是在收到停止运行的要求时,直接执行这个“结束” 类。以这这种方式配置Tomcat的例子(Win32, Linux / UNIX)。
4.
5.
第三种方式,也是最复杂,最灵活的一种方式,也是唯一一种需要编程的方式。这种方式要写一个实现WrapperListener接口的类。有些功能 是这种方式独有的,例如直接在程序中接收及回应系统控制事件(如启动及结束)。但这也增加了程序的复杂程度。如果不需要这些功能的话,还是使用第一种方式 比较方便。以这种方式配置的例子。
缺点,貌似只能对java程序设置,应该也可以设置bat文件。但可能比较麻烦
4. JavaService
5.
6. 参考
java程序在windows系统作为服务程序运行 - 快乐就好 - 博客园.htm
新建系统服务 在WINDOWS下安装自定义的服务项-3492zhang-ITPUB博客.htm
atitit.添加win 系统服务 bat批处理程序服务的法总结instsrv srvany java linux - attilax的专栏 - 博客频道 - CSDN.NET.htm
paip.注册java程序为LINUX系统服务的总结。 - attilax的专栏 - 博客频道 - CSDN.NET.htm
Atitit.Java exe bat 作为windows系统服务程序运行的更多相关文章
- 【java】转:Windows系统下面多个jdk版本切换
转自:https://blog.csdn.net/iamcaochong/article/details/56008545 1.系统-高级系统设置-环境变量 里面的Path值最前面的C:\Progra ...
- 非Unicode编码的软件如何在Windows系统上运行
我们常常会遇到这样一种情况:点开某些日文软件(我不会说就是galgame( ╯□╰ ))会出现乱码或者直接无法运行. 出现乱码的原因很简单:编码与译码的方式不一致!!!!!!!!!!! 首先大家需要知 ...
- java 基础(一) Sublime Text3搭建Java编译环境(Windows系统)
1. 首先配置好Java环境变量我的jdk版本是1.8.0_191,存放目录是C:\Program Files\Java,因此添加以下环境变量 (1)系统变量→新建 JAVA_HOME 变量,变量值为 ...
- bat 同步windows系统时间
需要使用管理员权限运行 net start w32timew32tm /config /updatew32tm /resync /rediscovernet stop w32timepause
- java使用正则表达式,去除windows系统中文件名的非法路径
w哦我爬取一个页面,并且把附件下载下来,保存,有的时候文件名,带*号,所以,无法保存 这时候就要删除所有的非法字符 String fileName = resourceName + fileTypt; ...
- Cygwin - windows系统下运行linux操作 --代替linux虚拟机安装、双系统的繁琐
我把Cygwin视为Windows用户熟练linxu系统操作的良好途径.它不需要虚拟机.双系统等安装对电脑知识.硬件的要求,只需要基本的软件安装操作即可.以下是安装步骤供小白同胞参考. Cygwin安 ...
- java juint框架的windows自动化-自动运行juint程序简述
在京东混了一个月,基本有点稳定了,觉得也有所余力了现在,继续写博客吧,不过以后更新也许不是那么频繁了 本人使用的是juint框架,对开发是一个单元测试的java框架,但是对测试而言是java的基石之一 ...
- windows 系统后台运行 jar 包
windows平台下 后台运行 jar 包 1.cmd 下执行方式:后台运行 start /min java -server -Xms1024m -Xmx20480m -jar $JAR_NAME. ...
- java testng框架的windows自动化-自动运行testng程序下篇
本文旨在让读者简单了解testng的自动运行 接上文https://www.cnblogs.com/xuezhezlr/p/9213456.html,文章大致把testng中比较特殊的两个xml形式说 ...
随机推荐
- 关于asp.net中gridview的问题,关于footer,16aspx上下的英语交流网程序,管理员的添加和修改有问题
css部分 这是添加用户的方法 但是A.AdminName 和后面的A.取到的都是空值protected void GridView1_RowCommand(object sender,GridVie ...
- 源码安装cmake(或者叫升级cmake)
cmake source install as follows: 0 cd ~ 1 wget https://cmake.org/files/v3.5/cmake-3.5.2.tar.gz 2 tar ...
- 拓扑排序+数学+DP【p1685】游览
Description 顺利通过了黄药师的考验,下面就可以尽情游览桃花岛了! 你要从桃花岛的西头开始一直玩到东头,然后在东头的码头离开.可是当你游玩了一次后,发现桃花岛的景色实在是非常的美丽!!!于是 ...
- 洛谷——P2656 采蘑菇
P2656 采蘑菇 题目描述 小胖和ZYR要去ESQMS森林采蘑菇. ESQMS森林间有N个小树丛,M条小径,每条小径都是单向的,连接两个小树丛,上面都有一定数量的蘑菇.小胖和ZYR经过某条小径一次, ...
- codevs 1025 选菜——01背包
时间限制: 1 s 空间限制: 128000 KB 题目等级 : 黄金 Gold 题解 查看运行结果 题目描述 Description 在小松宿舍楼下的不远处,有PK大学最不错的一个食堂—— ...
- python查询mangodb
from bson.objectid import ObjectId import pymongo #查询代码 #连接本机mongodb conn=pymongo.Connection() #指定 ...
- 博客 | 基于Travis CI实现Hexo在Github和Coding的同步自动化部署
文章目录 完成Hexo主题安装和配置 基于Travis CI实现同步部署 参考内容 相关链接 待补充 完成Hexo主题安装和配置 如果您还没有安装Hexo环境,请参考Hexo文档安装,也给出这样两篇博 ...
- linux 自动删除n天前文件
现在系统每天生成一个日期文件夹,并压缩上传到ftp服务器,造成目录下文件太多,所以决定写个定时删除文件的任务 写脚本文件 find /home/data -mtime +90 -name " ...
- Flex this
为了便于对比和叙述,我们先上一段最简单的js+html代码:<input type="button" value="test" id="htmB ...
- 小程序 座位管理系统(二)(nodejs+mongodb+小程序)
图片从左至右:登录图.湘大新闻页.教学楼页. 说明: Node.js+mongodb.有些数据放在小程序里,有些数据放在mongodb里.和一相比布局稍作改动,密码改成了"111111&q ...