http://hi.baidu.com/headmerk/item/745022aacdf45613a9cfb730
官网:http://wrapper.tanukisoftware.com/doc/english/download.jsp
在实际开发过程中很多模块需要独立运行,他们并不会以web形式发布,传统的做法是将其压缩为jar包独立运行,这种形式简单易行也比较利于维护,但是一旦服务器重启或出现异常时,程序往往无法自行修复或重启。解决服务器重启的传统做法是编写一段shell脚本随服务器启动而运行,但是这样做只是治标,那么我们想寻求一种“治本”的方式该怎么办呢?
Java Service Wrapper就轻松而简单的为我们解决了这些问题。"Java Service Wrapper"顾名思义,将我们的Java程序包装成系统服务,这样就可以随着系统的运行而自动运行,当然Java Service Wrapper(下面简称Wrapper)的功能绝不仅于此。
1、使用工具--java service wrapper
2、新建一个文件夹,在文件夹目录下再分别创建lib,bin,conf,logs,classes文件夹
3、将下载的wrapper的文件夹中的wrapper.jar,wrappertest.jar,wrapper.dll复制到新建的lib文件夹下,
将InstallApp-NT.bat,PauseApp-NT.bat,ResumeApp-NT.bat,StartApp-NT.bat,StopAppNT.bat,UninstallApp- NT.bat以及wrapper.exe复制到bin目录下;
将wrapper.conf复制到conf目录下;
将wrapper.log复制到logs目录下;
将要安装成服务的java程序打成jar包(这里我的是TestServer.jar),连同其他需要的jar包一并放到 classes 目录下。
4、配置conf目录下wrapper.conf文件:
这里仅仅列出需要修改的地方
4.1 wrapper.java.command=java
指明jre,如果本机已配置了jre,那么此项不需更改;否则的话,需要将jre复制到wrapper路径下
(和bin在 同一级)
同时修改wrapper.java.command=../jre/bin/java.exe
4.2将程序运行需要的jar包都列出来wrapper.jar是必需的
wrapper.java.classpath.1=../lib/wrapper.jar
wrapper.java.classpath.2=../classes/TestServer.jar
wrapper.java.classpath.2=../classes/classes12.jar
4.3指定程序的主类
wrapper.app.parameter.1=test.TestServer
4.4控制台运行时的名称
wrapper.console.title=TestServer
4.5指定服务的名称
wrapper.ntservice.name=TestServer
4.6windows服务的显示名称
wrapper.ntservice.displayname=TestServer
4.7服务描述
wrapper.ntservice.description=TestServer
4.8启动模式,默认是自启动AUTO_START or DEMAND_START
wrapper.ntservice.starttype=AUTO_START
5、运行InstallApp-NT.bat安装服务,运行StartApp-NT.bat启动服务
出现异常错误可以查看logs目录下的log文件
6注意事项:
6.1. 不要改变文件的相对路径
6.2. 安装好服务后,不要移动文件和文件夹
6.3. 也许您该定期清理logs/wrapper.log日志文件,防止日志文件过大
6.4. 备份好数据库和数据文件,定期查看