使用Java Service Wrapper将java程序作为linux服务并且开机自动启动
以java应用程序为例,打包为tianlong.jar,程序入口为tianlong.QueueTest。
下面在linux的/opt下建立tianlong目录,复制tianlong.jar到/opt/tianlong/lib目录下。
1、下载Java Service Wrapper(目前版本wrapper-linux-x86-32-3.3.2), 解压。
http://wrapper.tanukisoftware.org/
复制src\bin\sh.script.in到/opt/tianlong/bin目录,重命名为QueueTest
复制wrapper\bin目录下的wrapper文件到/opt/tianlong/bin目录
复制src\conf\wrapper.conf.in到/opt/tianlong/conf目录,重命名为wrapper.conf
复制src\lib\lib目录下3个文件到/opt/tianlong/lib目录
wrapper.so
wrapper.jar
wrappertest.jar
2、修改/opt/tianlong/bin/QueueTest文件
APP_NAME="QueueTest" //注意这里,这里的应用服务名称应该与第1步的/opt/tianlong/bin里面的 QueueTest名字相同
APP_LONG_NAME="QueueTest Application Server"
WRAPPER_CMD="./wrapper" //这里的路径要写正确,这里是对应了/opt/tianlong/bin/wrapper这个文件
WRAPPER_CONF="../conf/wrapper.conf" //这里的路径要写正确,这里是对应了/opt/tianlong/conf/wrapper.conf这个文件
赋予执行权限
chmod 775 /opt/testapp/bin/SocketServer
chmod 775 /opt/testapp/bin/wrapper
3、修改/opt/tianlong/conf/wrapper.conf文件
wrapper.java.command=/usr/java/jdk1.6.0_07/bin/java //这里是写java的安装路径
使用WrapperStartStopApp,这样可以通过命令带start/stop来启动/停止程序。
wrapper.java.mainclass=org.tanukisoftware.wrapper.WrapperStartStopApp
#这里添加你用到的jar包文件,从1..n你自己全写上吧,不过wrapper是必须的
wrapper.java.classpath.1=../lib/wrapper.jar
wrapper.java.classpath.2=../lib/tianlong.jar //这里表示将打包好的tianlong.jar放在/opt/tianlong/lib这个文件夹中
wrapper.java.classpath.3=../lib/asterisk-java-0.3.jar
wrapper.java.classpath.4=../lib/mysql-connector-java-5.1.6-bin.jar
wrapper.java.classpath.5=/usr/java/jdk1.6.0_07/lib/dt.jar
wrapper.java.classpath.6=/usr/java/jdk1.6.0_07/lib/tools.jar
wrapper.java.classpath.7=../cofig.properties //这个是应用程序用到的配置文件。如果使用的应用程序需要用到 配置,就需要把这个文件包含进来
wrapper.java.library.path.1=../lib //这里是表示wrapper使用到的jar包的路径,一般默认即可,绝对路径是:/opt/tianlong/lib
#wrapper.java.initmemory=3
JVM启动时的初始内存大小,当前是3M,如果要自定义,将#去掉,设置自己的值即可。
#wrapper.java.maxmemory=64
JVM启动时的最大内存使用量,当前是64M,如果要自定义,将#去掉,设置自己的值即可。
#这个就是你自己可执行程序的主类(MainClass),一般来说,就是包含public static void main的那个类
wrapper.app.parameter.1=tianlong.QueueTest
wrapper.app.parameter.2=1
wrapper.app.parameter.3=true
wrapper.app.parameter.4=tianlong.QueueTest
wrapper.app.parameter.5=true
wrapper.app.parameter.6=1
wrapper.app.parameter.7=stop
4、让QueueTest开机自动运行
ln -s /opt/tianlong/bin/QueueTest /etc/init.d/QueueTest
ln -s /opt/tianlong/bin/QueueTest /etc/rc0.d/QueueTest
ln -s /opt/tianlong/bin/QueueTest /etc/rc1.d/QueueTest
ln -s /opt/tianlong/bin/QueueTest /etc/rc2.d/QueueTest
ln -s /opt/tianlong/bin/QueueTest /etc/rc3.d/QueueTest
ln -s /opt/tianlong/bin/QueueTest /etc/rc4.d/QueueTest
ln -s /opt/tianlong/bin/QueueTest /etc/rc5.d/QueueTest
ln -s /opt/tianlong/bin/QueueTest /etc/rc6.d/QueueTest
5、测试 执行命令:service QueueTest start|stop|restart|status
程序运行时,Java Service Wrapper在/opt/tianlong/bin/目录下产生wrapper.log日志,
STATUS | wrapper | 2009/02/25 17:04:01 | --> Wrapper Started as Daemon
STATUS | wrapper | 2009/02/25 17:04:01 | Java Service Wrapper Community Edition 3.3.2
STATUS | wrapper | 2009/02/25 17:04:01 | Copyright (C) 1999-2009 Tanuki Software, Ltd. All Rights Reserved.
STATUS | wrapper | 2009/02/25 17:04:01 | http://wrapper.tanukisoftware.org
STATUS | wrapper | 2009/02/25 17:04:01 |
STATUS | wrapper | 2009/02/25 17:04:01 | Launching a JVM...
INFO | jvm 1 | 2009/02/25 17:04:02 | WrapperManager: Initializing...
出现上面这个就表示已经配置成功了。如果配置有错误的话,在wrapper.log里面会有提示。
同时,如果程序配置成功的并且启动的话,在/opt/tianlong/bin里面会有一个QueueTest.pid。
附目录结构
/opt/tianlong/
cofig.properties
/opt/tianlong/bin
| QueueTest
| wrapper
| wrapper.log(程序运行时自动产生)
/opt/tianlong/conf
| wrapper.conf
/opt/tianlong/lib
| libwrapper.so
| wrapper.jar
| tianlong.jar
| mysql-connector-java-5.1.6-bin.jar
| asterisk-java-0.3.jar
分享到:
相关推荐
- **多平台支持**:如果可能,可以考虑添加对Linux或macOS等其他操作系统的服务支持,使用如Systemd或launchd等相应服务管理系统。 - **性能优化**:优化JVM的启动参数,如调整堆内存大小,以提高服务的启动速度和...
4. **启动参数**:如果需要传递额外的参数给Java应用程序,可以在`wrapper.java.additional`系列配置项中添加。 5. **日志配置**:`wrapper.logfile`定义日志文件的位置,而`wrapper.console.format`和`wrapper.log...
在Linux系统中安装和配置Java环境是开发和运行Java应用程序的基础步骤。本文将详细阐述这一过程,包括下载、安装、配置环境变量以及验证Java安装是否成功。首先,我们需要明确Java的版本选择,通常推荐使用Oracle ...
在Linux系统中,Java服务的自动化管理和监控是运维工作中的重要环节。自启动shell脚本和CPU、内存占用监控脚本能确保Java服务在系统启动时自动运行,并实时监测其性能状态,以便及时发现和处理潜在问题。下面将详细...
在Linux环境下运行Java程序是许多开发人员日常工作中的一部分。Linux以其稳定性和安全性成为了服务器平台的首选,而Java作为跨平台的编程语言,其程序在Linux上运行同样具有广泛的应用。这篇博文将深入探讨如何在...
Java Service Wrapper是一个强大的工具,主要用于将Java应用程序包装成操作系统级别的服务,使得Java程序可以在Windows、Linux等系统下作为后台服务持续运行,不受用户登录或注销的影响。它提供了启动、停止、管理和...
3. 配置环境变量:编辑 /etc/profile 文件,添加环境变量 export JAVA_HOME=/home/apache/jdk1.8.0_171,export PATH=$JAVA_HOME/bin:$PATH。 总结 本文档指导了初学者在 Linux 服务器下搭建 Java 环境的步骤,...
### Linux下Java与Tomcat配置详解 #### 一、引言 在Linux环境下配置Java运行环境及部署Tomcat服务器是一项常见的任务,对于初学者来说,掌握这一技能是必不可少的。本文将详细介绍如何在Linux系统中配置Java环境...
### Linux——Java环境部署 #### 一、概述 在Linux环境下进行Java开发环境的搭建是一项基础而重要的工作。本文档将详细介绍如何在Linux系统中安装并配置Java环境,包括JDK与Tomcat的安装配置过程,并附带一些常用...
【Linux_Java环境终极搭建】教程详述了在Linux系统中搭建Java开发环境的全过程,主要包括JDK的安装、Tomcat服务器的配置、MySQL数据库的安装以及如何利用Putty进行远程连接。下面是详细的知识点: 1. **安装JDK**:...
在Linux系统中,Java应用程序通常以两种主要方式运行:直接通过命令行或作为守护进程(daemon)。本篇文章将深入探讨如何使用`sh`脚本来启动Java的JAR程序,并将其设置为守护进程,以便在后台持续运行,即使用户注销...
Linux 上部署 JAVA 应用 本资源摘要信息主要讲解了 Linux 上部署 JAVA 应用的相关知识点,包括 Linux 主机的网络配置、Samba 服务器的设置、JDK 和 Tomcat 的安装与配置等。 1. Linux 主机网络配置 在 Linux 主机...
Java Message Service (JMS) 是Java平台中用于创建、发送、接收和读取消息的标准API。它为分布式环境中的应用程序提供了可靠的消息传递机制,确保消息的有序性和持久性,同时也支持发布/订阅和点对点两种消息模式。...
### Linux安装及Java环境搭建详解 #### 一、安装虚拟机与Linux系统 在开始之前,我们首先需要准备以下工具: - **虚拟机软件**:推荐使用 VMware。 - **Linux系统镜像文件**:例如 CentOS-6.5-x86_64-bin-DVD1....
JavaServiceWrapper是一个强大的工具,它允许Java应用程序在操作系统级别作为服务运行,比如Windows或Linux的服务。这个工具使得Java应用程序,比如Tomcat这样的Web服务器,能够像其他系统服务一样被管理和控制,...
Java Service Wrapper是一款强大的工具,主要用于将Java应用程序包装成操作系统级别的服务,使得Java程序可以在Windows、Linux等操作系统下像原生服务一样启动、停止、管理和监控。这个“wrapper-windows-x86-64-...
在Linux系统上搭建Java、MySQL和Tomcat的Web运行环境是一项关键的任务,这对于开发者和运维人员来说至关重要。本文将详细讲解如何一步步完成这个过程。 首先,我们从安装Java JDK开始。Java开发工具包(JDK)是编写...
在Linux系统中,安装Java、Maven、MySQL和RabbitMQ是常见的开发环境配置步骤。以下是对这些组件的详细安装过程: 1. **Java安装**: - 首先,从Oracle官方网站下载Java SE Development Kit 8的`.tar.gz`文件。 - ...
为了使用这个驱动,开发者需要将其添加到Java类路径(classpath)中,或者如果使用Maven或Gradle,可以通过配置依赖管理来引入。然后,根据Linux系统的环境设置,可能需要配置适当的认证机制,如设置环境变量或修改...
在Linux系统中,为了实现自动在开机时启动Tomcat或Java程序,我们需要了解一些关键的知识点,包括系统服务管理、脚本编写以及环境配置。以下将详细解释如何操作。 首先,Tomcat是一个流行的开源Java应用服务器,而...