您的位置:首页 > 编程语言 > Java开发

将java程序运行为windows服务

2013-10-13 14:32 211 查看
一、JavaService

1.首先到
http://javaservice.objectweb.org/下载JavaService,最新版本为2.0.10

2.解压JavaService-2.0.10.zip,将JavaService.exe拷到要运行的java程序目录下

3.进入命令行,切换到java程序目录,运行

JavaService -install 服务名 jvm.dll文件路径
-Djava.class.path=jar文件路径(如有多个用;隔开)
-start 启动类 -out
输出重定向 -err
错误信息重定向 -current
工作目录 -depends
依赖的服务 -description
服务描述信息

例如:

JavaService -install SampleService"%JAVA_HOME%\jre\bin\server\jvm.dll"-Djava.class.path=%CD%\sample.jar;%CD%\mysql-connector-java-3.0.9-stable-bin.jar-start com.test.SampleService
-out%CD%\stdout.log -err %CD%\stderr.log -current %CD% -depends mysql -description"测试Java服务"

卸载的时候为:

JavaService -uninstall 服务名

例如:

Javaservice -uninstall SampleService

二、通过exe4j将java程序转换为exe程序

1.首先到http://www.ej-technologies.com/download/exe4j/files.php下载exe4j,按向导安装

2. 运行exe4j,1.Welcome,直接按Next→2.projecttype,这里有两个选择,Regular
mode和"JAR in EXE" mode,默认即可(如果程序文件较少的话可以用"JAR in EXE",将所有文件打包成一个exe文件),Next

3.输入应用程序的名字和exe输出目录,Next

4.Executable type选Service,Executable name输入要生成的exe文件名,此处可以勾选Icon
file,为生成的exe文件选择一个图标,点击Advanced
options→设置输出重定向和错误重定向的文件,Next→Description输入服务描述信息,选择启动类型:自动运行(Auto
start),手动运行(Start on demand),依赖的服务(Dependencies),Next到第五步Java
invocation

5.Class path添加相应的jar文件,然后选择Main
class,Next

6.Mininum version,输入最低要求的java版本,如1.3,然后一直Next到完成

7.安装服务,进入命令行,切换到相应目录,运行生成的exe文件加参数 -install,卸载服务为
-uninstall

其它命令:

-install-demand 安装为手动启动模式

-install-auto 安装为自动启动模式

-start 启动服务

-stop 停止服务

-status 服务启动状态

另外"-"也可以换成"--"或者"/"

三、通过exe4j还有另外一种方法,就是打包为GUI
application,然后通过instsrv.exe和srvany.exe运行为windows服务,方法为在exe4j第四步的时候
Executable type选GUI application,其它同上

安装为服务的方法,将instsrv.exe和srvany.exe拷入相应目录,进入命令行,切换到相应目录

instsrv 服务名 %CD%\srvany.exe

然后打开注册表,展开"HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\服务名\Parameters"

新建一字符串值Application,输入生成的exe文件的路径

新建一字符串值AppDirectory,输入生成的exe文件的目录

输入services.msc,找到相应服务,调节启动类型为自动,启动服务,OK!

instsrv.exe和srvany.exe下载地址:

http://www.electrasoft.com/srvany/srvany.exe

http://www.electrasoft.com/srvany/instsrv.exe

附:

exe4j是需要注册的,附上一个Exe4J v4.0.2的注册码:L-FLN#79829-19l6l0uowr1kw#585
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: