使用Wrapper来将Java程序转化为NT系统服务
来源:百度文库 编辑:神马文学网 时间:2024/06/03 04:59:50
Wrapper 下载页面
http://sourceforge.net/project/showfiles.php?group_id=39428
最新的是3.1.2 以下例子都是在此版本下进行
环境:Win2003server + JDK1.5 + Wrapper3.1.2
首先: 打包自己的应用
包含AA.jar config.xml 一个lib文件夹----包含所有jar 还需要一个log文件夹,使用log4J日志
配置wrapper.conf文件>
wrapper.java.command=D:\Sun\AppServer\jdk\bin\java
这里的指的是你用来执行你程序的Java.exe的路径,一般你配置了环境变量后就可以不管了,当然,你有好几个JDK的话,还是指定吧
wrapper.java.mainclass=org.tanukisoftware.wrapper.WrapperSimpleApp
这个可不是指你的主类,而是和你采用的方式有关,如果你采用第一种整合方式的话,就 写上
org.tanukisoftware.wrapper.WrapperSimpleApp ,由它来封装服务
wrapper.java.classpath.1=../lib/wrapper.jar
这里添加你用到的jar包文件,从1..n你自己全写上吧,不过wrapper是必须的
wrapper.java.library.path.1=../lib
这个是你要存放wrapper.dll的位置,一般默认就可以了
wrapper.app.parameter.1=
这个就是你自己可执行程序的主类(MainClass),一般来说,就是包含public static void main的那个类
# Name of the service
wrapper.ntservice.name=PESM_WEB_SERVICE
# Display name of the service
wrapper.ntservice.displayname=PESM_WEB_SERVICE
# Description of the service
wrapper.ntservice.description=PESM_WEB_SERVICE
以上三个都有介绍,不说了,名字而已
好,一切配置完成,直接拷贝src/bin下的三个文件,App.bat.in,InstallApp-NT.bat.in,UninstallApp-NT.bat.in到bin目录下,该名字成自己喜欢的,同时把后面的.in全部去掉
执行 InstallApp-NT.bat.,哈哈,服务加进来了,
好的,run一下,马上又停掉了,怎么搞得。
察看日志
STATUS | wrapper | 2005/12/08 13:22:15 | Launching a JVM...
INFO | jvm 1 | 2005/12/08 13:22:16 | log4j:ERROR setFile(null,true) call failed.
INFO | jvm 1 | 2005/12/08 13:22:16 | java.io.FileNotFoundException: ..Log\System.log (系统找不到指定的路径。)
INFO | jvm 1 | 2005/12/08 13:22:16 | at java.io.FileOutputStream.openAppend(Native Method)
INFO | jvm 1 | 2005/12/08 13:22:16 | at java.io.FileOutputStream.(FileOutputStream.java:177)
INFO | jvm 1 | 2005/12/08 13:22:16 | at java.io.FileOutputStream.(FileOutputStream.java:102)
INFO | jvm 1 | 2005/12/08 13:22:16 | at org.apache.log4j.FileAppender.setFile(FileAppender.java:282)
INFO | jvm 1 | 2005/12/08 13:22:16 | at org.apache.log4j.FileAppender.activateOptions(FileAppender.java:161)
INFO | jvm 1 | 2005/12/08 13:22:16 | at org.apache.log4j.DailyRollingFileAppender.activateOptions(DailyRollingFileAppender.java:215)
INFO | jvm 1 | 2005/12/08 13:22:16 | at org.apache.log4j.config.PropertySetter.activate(PropertySetter.java:256)
INFO | jvm 1 | 2005/12/08 13:22:16 | at org.apache.log4j.config.PropertySetter.setProperties(PropertySetter.java:132)
INFO | jvm 1 | 2005/12/08 13:22:16 | at org.apache.log4j.config.PropertySetter.setProperties(PropertySetter.java:96)
INFO | jvm 1 | 2005/12/08 13:22:16 | at org.apache.log4j.PropertyConfigurator.parseAppender(PropertyConfigurator.java:654)
INFO | jvm 1 | 2005/12/08 13:22:16 | at org.apache.log4j.PropertyConfigurator.parseCategory(PropertyConfigurator.java:612)
INFO | jvm 1 | 2005/12/08 13:22:16 | at org.apache.log4j.PropertyConfigurator.parseCatsAndRenderers(PropertyConfigurator.java:533)
INFO | jvm 1 | 2005/12/08 13:22:16 | at org.apache.log4j.PropertyConfigurator.doConfigure(PropertyConfigurator.java:417)
INFO | jvm 1 | 2005/12/08 13:22:16 | at org.apache.log4j.PropertyConfigurator.doConfigure(PropertyConfigurator.java:441)
INFO | jvm 1 | 2005/12/08 13:22:16 | at org.apache.log4j.helpers.OptionConverter.selectAndConfigure(OptionConverter.java:468)
INFO | jvm 1 | 2005/12/08 13:22:16 | at org.apache.log4j.LogManager.(LogManager.java:122)
INFO | jvm 1 | 2005/12/08 13:22:16 | at org.apache.log4j.Logger.getLogger(Logger.java:103)
INFO | jvm 1 | 2005/12/08 13:22:16 | at ytd.pesm.web.Client.(Unknown Source)
INFO | jvm 1 | 2005/12/08 13:22:16 | at java.lang.Class.forName0(Native Method)
INFO | jvm 1 | 2005/12/08 13:22:16 | at java.lang.Class.forName(Class.java:164)
INFO | jvm 1 | 2005/12/08 13:22:16 | at org.tanukisoftware.wrapper.WrapperSimpleApp.main(WrapperSimpleApp.java:334)
INFO | jvm 1 | 2005/12/08 13:22:16 | log4j:ERROR Either File or DatePattern options are not set for appender [systemLog].
INFO | jvm 1 | 2005/12/08 13:22:16 | Wrapper (Version 3.1.2) http://wrapper.tanukisoftware.org
INFO | jvm 1 | 2005/12/08 13:22:16 |
一大堆,最重要的是(wrapper的日志在logs下)发现找不到自己要写得log文件目录,察看wrapper说明知道服务执行后,当前路径就变成bin了,而我们的log文件夹被在logs下,所以,修改log4j.properties中日志的存放路径如下
原来的是
log4j.appender.systemLog.File=Log\\System.log
log4j.appender.systemLog.File=..\\logs\\Log\\System.log
重启服务,ok,找到log路径了,成功启动
还是有点不放心,看看log日志先,一看,傻了,还有错
STATUS | wrapper | 2005/12/08 13:17:21 | Launching a JVM...
INFO | jvm 1 | 2005/12/08 13:17:22 | config.xml 监控平台配置错误!!
INFO | jvm 1 | 2005/12/08 13:17:22 | Wrapper (Version 3.1.2) http://wrapper.tanukisoftware.org
INFO | jvm 1 | 2005/12/08 13:17:22 |
INFO | jvm 1 | 2005/12/08 13:17:22 | 无法连接远程主机,请检查通信主机是否打开端口!!
INFO | jvm 1 | 2005/12/08 13:17:22 | 无法连接远程主机,请检查通信主机是否打开端口!!
找不到config.xml文件,想想刚才的路径问题,把config.xml拷贝到bin下
哈,这下重启,解决问题,日志如下
STATUS | wrapper | 2005/12/08 13:15:25 | --> Wrapper Started as Service
STATUS | wrapper | 2005/12/08 13:15:25 | Launching a JVM...
INFO | jvm 1 | 2005/12/08 13:15:27 | Wrapper (Version 3.1.2) http://wrapper.tanukisoftware.org
INFO | jvm 1 | 2005/12/08 13:15:27 |
INFO | jvm 1 | 2005/12/08 13:15:27 | Server.IP:192.168.0.201 port:1888 Connected!
写下来,一作备忘,二则看是否能给其他朋友一点帮助
_xyz
http://sourceforge.net/project/showfiles.php?group_id=39428
最新的是3.1.2 以下例子都是在此版本下进行
环境:Win2003server + JDK1.5 + Wrapper3.1.2
首先: 打包自己的应用
包含AA.jar config.xml 一个lib文件夹----包含所有jar 还需要一个log文件夹,使用log4J日志
配置wrapper.conf文件>
wrapper.java.command=D:\Sun\AppServer\jdk\bin\java
这里的指的是你用来执行你程序的Java.exe的路径,一般你配置了环境变量后就可以不管了,当然,你有好几个JDK的话,还是指定吧
wrapper.java.mainclass=org.tanukisoftware.wrapper.WrapperSimpleApp
这个可不是指你的主类,而是和你采用的方式有关,如果你采用第一种整合方式的话,就 写上
org.tanukisoftware.wrapper.WrapperSimpleApp ,由它来封装服务
wrapper.java.classpath.1=../lib/wrapper.jar
这里添加你用到的jar包文件,从1..n你自己全写上吧,不过wrapper是必须的
wrapper.java.library.path.1=../lib
这个是你要存放wrapper.dll的位置,一般默认就可以了
wrapper.app.parameter.1=
这个就是你自己可执行程序的主类(MainClass),一般来说,就是包含public static void main的那个类
# Name of the service
wrapper.ntservice.name=PESM_WEB_SERVICE
# Display name of the service
wrapper.ntservice.displayname=PESM_WEB_SERVICE
# Description of the service
wrapper.ntservice.description=PESM_WEB_SERVICE
以上三个都有介绍,不说了,名字而已
好,一切配置完成,直接拷贝src/bin下的三个文件,App.bat.in,InstallApp-NT.bat.in,UninstallApp-NT.bat.in到bin目录下,该名字成自己喜欢的,同时把后面的.in全部去掉
执行 InstallApp-NT.bat.,哈哈,服务加进来了,
好的,run一下,马上又停掉了,怎么搞得。
察看日志
STATUS | wrapper | 2005/12/08 13:22:15 | Launching a JVM...
INFO | jvm 1 | 2005/12/08 13:22:16 | log4j:ERROR setFile(null,true) call failed.
INFO | jvm 1 | 2005/12/08 13:22:16 | java.io.FileNotFoundException: ..Log\System.log (系统找不到指定的路径。)
INFO | jvm 1 | 2005/12/08 13:22:16 | at java.io.FileOutputStream.openAppend(Native Method)
INFO | jvm 1 | 2005/12/08 13:22:16 | at java.io.FileOutputStream.
INFO | jvm 1 | 2005/12/08 13:22:16 | at java.io.FileOutputStream.
INFO | jvm 1 | 2005/12/08 13:22:16 | at org.apache.log4j.FileAppender.setFile(FileAppender.java:282)
INFO | jvm 1 | 2005/12/08 13:22:16 | at org.apache.log4j.FileAppender.activateOptions(FileAppender.java:161)
INFO | jvm 1 | 2005/12/08 13:22:16 | at org.apache.log4j.DailyRollingFileAppender.activateOptions(DailyRollingFileAppender.java:215)
INFO | jvm 1 | 2005/12/08 13:22:16 | at org.apache.log4j.config.PropertySetter.activate(PropertySetter.java:256)
INFO | jvm 1 | 2005/12/08 13:22:16 | at org.apache.log4j.config.PropertySetter.setProperties(PropertySetter.java:132)
INFO | jvm 1 | 2005/12/08 13:22:16 | at org.apache.log4j.config.PropertySetter.setProperties(PropertySetter.java:96)
INFO | jvm 1 | 2005/12/08 13:22:16 | at org.apache.log4j.PropertyConfigurator.parseAppender(PropertyConfigurator.java:654)
INFO | jvm 1 | 2005/12/08 13:22:16 | at org.apache.log4j.PropertyConfigurator.parseCategory(PropertyConfigurator.java:612)
INFO | jvm 1 | 2005/12/08 13:22:16 | at org.apache.log4j.PropertyConfigurator.parseCatsAndRenderers(PropertyConfigurator.java:533)
INFO | jvm 1 | 2005/12/08 13:22:16 | at org.apache.log4j.PropertyConfigurator.doConfigure(PropertyConfigurator.java:417)
INFO | jvm 1 | 2005/12/08 13:22:16 | at org.apache.log4j.PropertyConfigurator.doConfigure(PropertyConfigurator.java:441)
INFO | jvm 1 | 2005/12/08 13:22:16 | at org.apache.log4j.helpers.OptionConverter.selectAndConfigure(OptionConverter.java:468)
INFO | jvm 1 | 2005/12/08 13:22:16 | at org.apache.log4j.LogManager.
INFO | jvm 1 | 2005/12/08 13:22:16 | at org.apache.log4j.Logger.getLogger(Logger.java:103)
INFO | jvm 1 | 2005/12/08 13:22:16 | at ytd.pesm.web.Client.
INFO | jvm 1 | 2005/12/08 13:22:16 | at java.lang.Class.forName0(Native Method)
INFO | jvm 1 | 2005/12/08 13:22:16 | at java.lang.Class.forName(Class.java:164)
INFO | jvm 1 | 2005/12/08 13:22:16 | at org.tanukisoftware.wrapper.WrapperSimpleApp.main(WrapperSimpleApp.java:334)
INFO | jvm 1 | 2005/12/08 13:22:16 | log4j:ERROR Either File or DatePattern options are not set for appender [systemLog].
INFO | jvm 1 | 2005/12/08 13:22:16 | Wrapper (Version 3.1.2) http://wrapper.tanukisoftware.org
INFO | jvm 1 | 2005/12/08 13:22:16 |
一大堆,最重要的是(wrapper的日志在logs下)发现找不到自己要写得log文件目录,察看wrapper说明知道服务执行后,当前路径就变成bin了,而我们的log文件夹被在logs下,所以,修改log4j.properties中日志的存放路径如下
原来的是
log4j.appender.systemLog.File=Log\\System.log
log4j.appender.systemLog.File=..\\logs\\Log\\System.log
重启服务,ok,找到log路径了,成功启动
还是有点不放心,看看log日志先,一看,傻了,还有错
STATUS | wrapper | 2005/12/08 13:17:21 | Launching a JVM...
INFO | jvm 1 | 2005/12/08 13:17:22 | config.xml 监控平台配置错误!!
INFO | jvm 1 | 2005/12/08 13:17:22 | Wrapper (Version 3.1.2) http://wrapper.tanukisoftware.org
INFO | jvm 1 | 2005/12/08 13:17:22 |
INFO | jvm 1 | 2005/12/08 13:17:22 | 无法连接远程主机,请检查通信主机是否打开端口!!
INFO | jvm 1 | 2005/12/08 13:17:22 | 无法连接远程主机,请检查通信主机是否打开端口!!
找不到config.xml文件,想想刚才的路径问题,把config.xml拷贝到bin下
哈,这下重启,解决问题,日志如下
STATUS | wrapper | 2005/12/08 13:15:25 | --> Wrapper Started as Service
STATUS | wrapper | 2005/12/08 13:15:25 | Launching a JVM...
INFO | jvm 1 | 2005/12/08 13:15:27 | Wrapper (Version 3.1.2) http://wrapper.tanukisoftware.org
INFO | jvm 1 | 2005/12/08 13:15:27 |
INFO | jvm 1 | 2005/12/08 13:15:27 | Server.IP:192.168.0.201 port:1888 Connected!
写下来,一作备忘,二则看是否能给其他朋友一点帮助
_xyz
使用Wrapper来将Java程序转化为NT系统服务
使用Wrapper来将Java程序转化为NT系统服务
使用Java Service Wrapper将Java程序发布成Windows Servi...
将java程序运行为Windows服务 - dragonbbc的专栏 - CSDNBlog
将JAVA程序作成任何系统的安装文件。
Java Service Wrapper注册WINDOWS服务[转]-亦可-搜狐博客
1分钟Java程序快速转换为windows服务运行 - 在路上... - BlogJava
使用WebLogic将Web站点转换为Web服务(一)
使用 Axis2 和 JiBX 将 Java 类转换成 Web 服务,第 1 部分: 使用 XML 通过 Java 类定义 Web 服务
将java程序打包成exe
使用Java Web服务构建SOA
将经验和信息转化为生产力
将“逆反”转化为教育的契机
如何将从众效应转化为说服力?
中国会将财富转化为实力
如何将ppt转化为word_flysky
将钓鱼岛事件转化为好事
将钓鱼岛事件转化为好事
科学家首次将信息转化为能量
将钓鱼岛事件转化为好事
在Windows下将Python转化成独立的EXE程序 (转载) - 天外飞仙(坐上C++这头宝驹飞起来) - 博客园
基于Java程序的Google地图服务跻身手机屏幕
学困生转化个案浅析_为您服务教育网
创新思维转化问题学生_为您服务教育网