Java Service Wrapper (http://wrapper.tanukisoftware.com/doc/english/product-overview.html)可以很方便得在各个平台(windows,linux,max os)管理Java进程,管理JVM,启动停止,开机启动,管理内存溢出的异常  标准版还可以发错误日志email,检测死锁

比自己写个启动脚本更为方便通用稳定,后台服务可以考虑使用JSW。

这里使用免费的社区版,可以先直接跑一下demo看效果。

基本原理就是 java org.tanukisoftware.wrapper.WrapperSimpleApp ,传递本程序的main程序过去,以此方式启动进程。

这里介绍下启动openfire的步骤

1 本应用的目录分为lib conf logs bin

2 拷贝{WRAPPER_HOME}\bin\wrapper  {WRAPPER_HOME}\src\bin\sh.script.in  到本应用的bin目录,并更改sh.script.in为自己的应用名,如openfire_control, 更改两个文件的权限为可执行

openfire_control 设置本app名称

APP_NAME="openfire"
APP_LONG_NAME="openfire"

3 拷贝{WRAPPER_HOME}\lib 到本应用的 wrapper目录,

4 拷贝{WRAPPER_HOME}\conf wrapper到wrapper目录,更改 wrapper.conf:

wrapper.working.dir=..

set.default.REPO_DIR=lib

set.default.APP_BASE=.

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

wrapper.java.classpath.2=conf

wrapper.java.classpath.3=lib/*.jar 

wrapper.java.additional.1=-d64

wrapper.java.additional.2=-server

wrapper.java.additional.3=-DopenfireHome=/data1/openfire

wrapper.java.library.path.1=wrapper

# Initial Java Heap Size (in MB)

wrapper.java.initmemory=600

# Maximum Java Heap Size (in MB)

wrapper.java.maxmemory=600

# Application parameters.  Add parameters as needed starting from 1

wrapper.app.parameter.1=org.jivesoftware.openfire.starter.ServerStarter

wrapper.logfile=logs/wrapper.log

5 bin目录下执行 ./openfire_control start,如果应用未启动则到logs目录检查并排除之

debug模式:

Linux/ UNIX Command line Example:
./wrapper ../conf/wrapper.conf wrapper.debug=TRUE

使用 Java Service Wrapper 启动java后台进程服务的更多相关文章

  1. java service wrapper将java程序包装成系统服务(一)

    一. 概述 使用java语言开发应用程序,在windows平台下,一般存在3种应用形式: 1. web应用.web应用多数打成war包在web容器(如tomcat,jetty等)中运行. 2. 桌面应 ...

  2. 利用Java Service Wrapper将java项目添加到windows服务中

    1.web项目,即tomcat/resin添加至window系统服务,步骤如下:第一步:找到tomcat的bin目录,如:D:\apache-tomcat-8.0.26\bin第二步:打开cmd,cd ...

  3. Java Service Wrapper将java程序设置为服务

    有时候我们希望我们java写的程序作为服务注册到系统中,Java Service Wrapper(下面简称wrapper)是目前较为流行的将Java程序部署成Windows服务的解决方案, 本文将讨论 ...

  4. Java Service Wrapper 发布Java程序为Windows服务

    下载Windows版本:https://www.krenger.ch/blog/java-service-wrapper-3-5-37-for-windows-x64/ 转自:F:\java\bhGe ...

  5. 详解Maven项目利用java service wrapper将Java程序生成Windows服务

    在项目的开发中,有时候需要将Java应用程序打包成Windows服务,我们就直接可以通过windows的服务来启动和关闭java程序了. 本博文将通过有两种方法实现该功能,手动创建法和Maven自动打 ...

  6. 使用java service wrapper将java程序注册为window服务

    1.下载java service wrapper 下载地址:http://wrapper.tanukisoftware.com/doc/english/download.jsp 针对自己的需求下载相应 ...

  7. 利用JAVA Service Wrapper把JAVA程序做成windows服务

    今天做了一个读取数据入库的程序.由于读取的数据每天都更新,于是就想把程序做成一个服务,每天定时执行.研究了一下,发现有几种方式可以做.下面我主要记录一下JAVA Service Wrapper方式. ...

  8. Java Service Wrapper 发布Java程序或者jar包为Windows服务

    下载Windows版本:http://nchc.dl.sourceforge.net/sourceforge/wrapper/wrapper-windows-x86-32-3.2.3.zip 现在目前 ...

  9. 使用Java Service Wrapper将java程序作为linux服务并且开机自动启动

    以java应用程序为例,打包为tianlong.jar,程序入口为tianlong.QueueTest. 下面在linux的/opt下建立tianlong目录,复制tianlong.jar到/opt/ ...

随机推荐

  1. For,Function,Lazy

    package com.dtgroup.study import scala.io.Source object ForFunctionLazy { def main(args: Array[Strin ...

  2. JAVA线程池原理详解一

    线程池的优点 1.线程是稀缺资源,使用线程池可以减少创建和销毁线程的次数,每个工作线程都可以重复使用. 2.可以根据系统的承受能力,调整线程池中工作线程的数量,防止因为消耗过多内存导致服务器崩溃. 线 ...

  3. 执行robot framework 的测试用例 命令行pybot使用方式

    1.执行整个项目下的所有用例: pybot 项目路径.例如: pybot D:\robot 2.执行某个suit中的所有用例: pybot 项目路径\suit文件名称. 例如:pybot D:\rob ...

  4. C++之路进阶——codevs2451(互不侵犯)

    2451 互不侵犯 2005年省队选拔赛四川  时间限制: 1 s  空间限制: 128000 KB  题目等级 : 大师 Master       题目描述 Description 在N×N的棋盘里 ...

  5. Mac电脑AndroidStudio使用SVN进行版本控制

    http://blog.csdn.net/xiaoshi720/article/details/49467523

  6. Microsoft Office Excel 不能访问文件及COM无法访问

    Microsoft Office Excel 不能访问文件及COM无法访问 Microsoft Office Excel 不能访问文件“*.xls”. 可能的原因有: 1 文件名称或路径不存在. 2  ...

  7. 使用boost的asio,io_service无法初始化

    今天用vs编一个用asio写的程序,发现在tcp::acceptor::open()失败,查了好久,发现是acceptor绑定的io_service没有正确的初始化,又查了半天,发现是需要加一个预编译 ...

  8. vs2013 类名颜色显示黑色,无法修改

    vs2013 类名黑色,修改不起作用,最后找到解决办法. http://stackoverflow.com/questions/10970305/how-can-i-get-user-type-c-s ...

  9. artTemplate模板引擎

    artTemplate模板引擎         <li>索引 {{i + 1}} :{{value}}</li>     {{/each}} </ul> </ ...

  10. [Android Studio] 按钮学习

    Android Studio 按钮 1. 添加一个按钮 新建一个 Blank Project 之后, 在 activity_main.xml: 中添加一个按钮, 可以使用design 模式来添加,: ...