javaservice wrapper 实现注册服务功能

 

1.下载社区版(Community)
主站:
http://wrapper.tanukisoftware.com/doc/english/download.jsp

下载地址:
32-bit
http://wrapper.tanukisoftware.com/download/3.5.9/wrapper-linux-ppc-32-3.5.9.tar.gz
http://wrapper.tanukisoftware.com/download/3.5.9/wrapper-linux-x86-32-3.5.9.tar.gz
http://wrapper.tanukisoftware.com/download/3.5.9/wrapper-macosx-universal-32-3.5.9.tar.gz
http://wrapper.tanukisoftware.com/download/3.5.9/wrapper-solaris-sparc-32-3.5.9.tar.gz
http://wrapper.tanukisoftware.com/download/3.5.9/wrapper-solaris-x86-32-3.5.9.tar.gz
http://wrapper.tanukisoftware.com/download/3.5.9/wrapper-windows-x86-32-3.5.9.zip

64-bit
http://wrapper.tanukisoftware.com/download/3.5.9/wrapper-linux-ia-64-3.5.9.tar.gz
http://wrapper.tanukisoftware.com/download/3.5.9/wrapper-linux-ppc-64-3.5.9.tar.gz
http://wrapper.tanukisoftware.com/download/3.5.9/wrapper-linux-x86-64-3.5.9.tar.gz
http://wrapper.tanukisoftware.com/download/3.5.9/wrapper-solaris-sparc-64-3.5.9.tar.gz
http://wrapper.tanukisoftware.com/download/3.5.9/wrapper-solaris-x86-64-3.5.9.tar.gz

2.例子1

a.创建HelloWorld_HOME文件夹,在下面编写例子程序HelloWorld.java
public class HelloWorld {
 public static void main(String[] args) {
  System.out.println("Starting Hello World");

  while (true) {
   try {
    Thread.sleep(1000);
   } catch (InterruptedException e) {
   }

   System.out.println("Looping...");
  }
 }
}


b.编写编译和执行的bat文件
compile.bat内容(创建在HELLOWORLD_HOME目录下):
javac HelloWorld.java
pause

run_HelloWorld.bat内容(创建在HELLOWORLD_HOME目录下):
java -classpath . HelloWorld
pause

c.执行 compile.bat
C:\HelloWorld_HOME>javac HelloWorld.java

C:\HelloWorld_HOME>pause
请按任意键继续. . .

d.执行 run_HelloWorld.bat
C:\HelloWorld_HOME>java -classpath . HelloWorld
Starting Hello World
Looping...
Looping...
Looping...
Looping...
Looping...

点击关闭console

e.在HelloWorld_HOME编写文件目录创建的bat文件
create_directory.bat内容(创建在HELLOWORLD_HOME目录下):
mkdir bin
mkdir conf
mkdir lang
mkdir lib
mkdir lib\classes
mkdir logs
pause

f.执行create_directory.bat

g.下载wrapper-windows-x86-32-3.5.9.zip文件,解压后
把wrapper-windows-x86-32-3.5.9\bin\wrapper.exe文件拷贝到HelloWorld_HOME\bin目录下,
把wrapper-windows-x86-32-3.5.9\lib\wrapper.dll文件拷贝到HelloWorld_HOME\lib目录下,
把wrapper-windows-x86-32-3.5.9\lib\wrapper.jar文件拷贝到HelloWorld_HOME\lib目录下,


h.拷贝HelloWorld.class到HELLOWORLD_HOME\lib\classes目录下
move_HelloWorld_class.bat内容(创建在HELLOWORLD_HOME目录下):
move HelloWorld.class lib\classes
pause

执行move_HelloWorld_class.bat文件

i.编写Wrapper的配置文件wrapper.conf
wrapper.conf内容(保存在HELLOWORLD_HOME\conf文件夹下):
encoding=UTF-8
#include ../conf/wrapper-license.conf

wrapper.lang.folder=../lang

# Java Configuration.
wrapper.java.command=java
wrapper.java.command.loglevel=INFO

wrapper.java.mainclass=org.tanukisoftware.wrapper.WrapperSimpleApp
wrapper.app.parameter.1=HelloWorld

wrapper.java.classpath.1=../lib/wrapper.jar
wrapper.java.classpath.2=../lib/classes

wrapper.java.library.path.1=../lib

# Logging Configuration
wrapper.logfile=../logs/wrapper.log

# Service Configuration
wrapper.name=MyHelloWorld
wrapper.ntservice.starttype=AUTO_START


j.启动配置HelloWorld程序
run_Wrapper.bat内容(创建在HELLOWORLD_HOME目录下):
bin\wrapper.exe -c ..\conf\wrapper.conf
pause

执行run_Wrapper.bat文件显示:

C:\HelloWorld_HOME>bin\wrapper.exe -c ..\conf\wrapper.conf
wrapper  | --> Wrapper Started as Console
wrapper  | Java Service Wrapper Community Edition 32-bit 3.5.9
wrapper  |   Copyright (C) 1999-2011 Tanuki Software, Ltd. All Rights Reserved.
wrapper  |     http://wrapper.tanukisoftware.com
wrapper  |
wrapper  | Launching a JVM...
wrapper  | Command: "C:\WINDOWS\system32\java.exe" -Djava.library.path="../lib"
-classpath "../lib/wrapper.jar;../lib/classes" -Dwrapper.key="nJkBcJUr644sxdao"
-Dwrapper.port=32000 -Dwrapper.jvm.port.min=31000 -Dwrapper.jvm.port.max=31999 -
Dwrapper.pid=916 -Dwrapper.version="3.5.9" -Dwrapper.native_library="wrapper" -D
wrapper.cpu.timeout="10" -Dwrapper.jvmid=1 org.tanukisoftware.wrapper.WrapperSim
pleApp HelloWorld
jvm 1    | WrapperManager: Initializing...
jvm 1    | Starting Hello World
jvm 1    | Looping...
jvm 1    | Looping...
jvm 1    | Looping...
jvm 1    | Looping...
jvm 1    | Looping...
jvm 1    | Looping...
jvm 1    | Looping...
jvm 1    | Looping...
jvm 1    | Looping...
wrapper  | CTRL-C trapped.  Shutting down.
jvm 1    | Looping...
wrapper  | <-- Wrapper Stopped
终止批处理操作吗(Y/N)? y


k.把HelloWorld作为Windows服务
install_service.bat内容(创建在HELLOWORLD_HOME目录下):
bin\wrapper.exe -i ..\conf\wrapper.conf
pause

执行install_service.bat文件显示:

C:\HelloWorld_HOME>bin\wrapper.exe -i ..\conf\wrapper.conf
wrapper  | MyHelloWorld service installed.

C:\HelloWorld_HOME>pause
请按任意键继续. . .

如果显示wrapper  | MyHelloWorld service installed.表明服务已经安装


l.启动服务
有两种方式
方式1:
编写start_service_by_net.bat内容(创建在HELLOWORLD_HOME目录下):
net start MyHelloWorld
pause

执行start_service_by_net.bat显示:

C:\HelloWorld_HOME>net start MyHelloWorld
MyHelloWorld 服务正在启动 ..
MyHelloWorld 服务已经启动成功。


C:\HelloWorld_HOME>pause
请按任意键继续. . .

方式2:
编写start_service_by_wrapper.bat内容(创建在HELLOWORLD_HOME目录下):
bin\wrapper.exe -t ..\conf\wrapper.conf
pause

执行start_service_by_wrapper.bat显示:
C:\HelloWorld_HOME>bin\wrapper.exe -t ..\conf\wrapper.conf
wrapper  | Starting the MyHelloWorld service...
wrapper  | Waiting to start...
wrapper  | Waiting to start...
wrapper  | MyHelloWorld started.

C:\HelloWorld_HOME>pause
请按任意键继续. . .

m.停止服务
有两种方式
方式1:
编写stop_service_by_net.bat内容(创建在HELLOWORLD_HOME目录下):
net stop MyHelloWorld
pause

执行stop_service_by_net.bat显示:

C:\HelloWorld_HOME>net stop MyHelloWorld
.
MyHelloWorld 服务已成功停止。


C:\HelloWorld_HOME>pause
请按任意键继续. . .

方式2:
编写stop_service_by_wrapper.bat内容(创建在HELLOWORLD_HOME目录下):
bin\wrapper.exe -p ..\conf\wrapper.conf
pause

执行stop_service_by_wrapper.bat显示:
C:\HelloWorld_HOME>bin\wrapper.exe -p ..\conf\wrapper.conf
wrapper  | Stopping the MyHelloWorld service...
wrapper  | MyHelloWorld stopped.

C:\HelloWorld_HOME>pause
请按任意键继续. . .

n.移除服务
编写uninstall_service.bat内容(创建在HELLOWORLD_HOME目录下):
bin\wrapper.exe -r ..\conf\wrapper.conf
pause

执行uninstall_service.bat显示:
C:\HelloWorld_HOME>bin\wrapper.exe -r ..\conf\wrapper.conf
wrapper  | MyHelloWorld service removed.

C:\HelloWorld_HOME>pause
请按任意键继续. . .

 

来源于网络,回归于网络.
我的邮箱:[email protected] QQ:48399956

 [email protected]
快乐!
2011年07月20日

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章