zoukankan      html  css  js  c++  java
  • 用JavaServiceWrapper将JAVA程序发布成Windows服务

    怎么把jar文件做成系统服务,比较多的解决方案是使用 wrapper-windows 这个软件包。这个软件包的强大之处是能把jre环境也给打进去,这个服务可以正常运行在根本没有jre环境即就没有安装JDK的机器上。

    1.到Java Service Wrapper 官网https://wrapper.tanukisoftware.com/doc/english/download.jsp,下载一个符合自己操作系统的版本。

    这里用的是323.5.30最新版本的。(注:32版本是免费的,64是需要付费的)

    2.下载后解压,里面包含 bin, conf ,doc, jdoc lib, logs, src 7个文件夹。

    3.自己独立新建一个文件夹,如:Test   ,在此文件夹下创建lib,bin,logs,conf是个文件夹。

    4.将解压后的的wrapper文件夹下对应的文件移入到Test

    wrapper-windowssrcin 下的
                        App.bat.in
                      InstallApp-NT.bat.in
                       PauseApp-NT.bat.in
                       ResumeApp-NT.bat.in
                       StartApp-NT.bat.in
                       StopApp-NT.bat.in
                       UninstallApp-NT.bat.in

    复制到bin目录下,并将后缀为.in的文件全部重命名,去掉.in。例如: App.bat.in重命名为App.bat

    wrapper-windowsinwrapper.exe -> Testinwrapper.exe

    wrapper-windowsconfwrapper.conf.in -> Testconfwrapper.conf

    wrapper-windowsconfwrapper-license-time.conf-> Testconfwrapper-license.conf

    wrapper-windowslibwrapper.jar -> Testlibwrapper.jar

    wrapper-windowslibwrapper.dll -> Testlibwrapper.dll

    wrapper-windowslogs  下的文件复制到myWindowServlogs目录下。

    5.将要发布的Java程序的classes放在Testlib文件夹下边,

    将程序依赖的jar包放在Test/lib下。

     

    6.修改wrapper.conf文件的内容,

     

    (1)wrapper.java.command=java 用的是jdk的编译命令,所在机器,必须安装有jdk.

    (2)wrapper.java.mainclass=org.tanukisoftware.wrapper.WrapperSimpleApp 表示,启动主函数,这里用wrapper的代理。

     

    (3)

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

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

    wrapper.java.classpath.3=../lib/aspectjrt-1.6.12.jar  将依赖的jar也以这种形式添加到classpath下。

    ............................................

     

    (4)wrapper.java.initmemory=128 配置程序运行的所需要的内存大小这里是限制服务所占用的最小和最大内存,根据程序运行的效果也可以不改。

    wrapper.java.maxmemory=256

     

    (5)wrapper.app.parameter.1=com.bizvane.ConnectorApp

    指定程序的主类  

          com.weiguo.mypro.TimerRun myJar打包工程中main方法所在的类

        就需要如下配置:

                      wrapper.app.parameter.1=com.weiguo.mypro.TimerRun

     

    (6)控制台运行时的名称 (显示在任务管理器和服务里面的)

          wrapper.console.title=TestServer

    指定服务的名称(显示在任务管理器和服务里面的)

             wrapper.ntservice.name=TestServer

    windows服务的显示名称 (显示在任务管理器和服务里面的)

             wrapper.ntservice.displayname=TestServer

    服务描述 (显示在服务里面的描述)

              wrapper.ntservice.description=TestServer描述

    (7)启动模式,默认是自启动AUTO_START or DEMAND_START

           wrapper.ntservice.starttype=AUTO_START

     

    7.运行InstallApp-NT.bat安装服务,运行StartApp-NT.bat启动服务。先安装再启动。停止了再卸载。
    8.可以暂停PauseApp-NT.bat,重启服务ResumeApp-NT.bat,停止服务StopApp-NT.bat。
    9.卸载服务UninstallApp-NT.bat

  • 相关阅读:
    使用openssl搭建CA并颁发服务器证书
    PKCS#1规范阅读笔记2--------公私钥ASN.1结构
    PKCS#1规范阅读笔记1--------基本概念
    Chrome 扩展机制
    Docker部署zookeeper集群和kafka集群,实现互联
    ASP.NET Identity实现分布式Session,Docker+Nginx+Redis+ASP.NET CORE Identity
    Transmission添加SSL访问
    重磅来袭,水木PC客户端全面改版,欢迎使用!
    CLR via C# 3rd
    IL命令
  • 原文地址:https://www.cnblogs.com/hhhd/p/6639555.html
Copyright © 2011-2022 走看看