把java jar包注册成windows系统服务,
1、可以先把java程序已exe形式发布,然后根据windows提供的相应方法去注册服务
2、apache 的procrun,tomcat用的也是这个
3、javaservice,以这个为例,一个32位系统,一个64位系统
JavaService 64位
http://download.forge.ow2.org/javaservice/JavaService_2_0_10-amd64.zip
JavaService 32位
http://download.forge.ow2.org/javaservice/JavaService-2.0.10.zip
一、将jar包以单个jar形式打包
二、javaservice解压到同目录
三、安装服务
C:\disconf>JavaService.exe -install disconf "c:/progra~1/java/jre1.8.0_92/bin/server/jvm.dll" -Djava.class.path="c:/progra~1/java/jre1.8.0_92/lib/tools.jar;C:/disconf/client.jar" -Xms32m -Xmx64m -start com.embracesource.config.Client -out "c:/disconf/out.log" -err "c:/disconf/err.log"
安装成功后提示
The disconf automatic service was successfully installed
四、安装失败
查看windows日志,提示
The LoadLibrary function failed for the following reason: 找不到指定的模块。
Could not load the Java Virtual Machine.
这个问题很蛋疼,搞了一个下午, google也没答案,
解决方法
拷贝%JAVA_HOME%/bin/msvcr100.dll 文件到C:\Windows\System32 如果是64位系统还要拷贝到C:\Windows\SysWOW64
Comments | NOTHING