1. 一、所需工具Java Service Wrapper
下载地址:https://wrapper.tanukisoftware.com/doc/english/download.jsp
二、在硬盘上创建项目目录
创建bin、conf、lib、logs目录
三、解压打开下载来的Wrapper
(1)将bin目录下的wrapper.exe,src/bin目录下的App.bat.in、InstallApp-NT.bat.in、UninstallApp-NT.bat.in文件拷贝到自己创建的bin目录下,并删掉.in后缀:
(2)将src/conf目录下的wrapper.conf.in、conf目录下的wrapper-license.conf拷贝到自己创建的conf目录下,并删掉.in后缀:
(3)将lib目录下的wrapper.jar、wrapper.dll拷贝到自己创建的lib目录下:
四、创建Java项目,编写代码
关键代码:
package com.javaapp; import java.util.List; import java.util.Map; import java.util.concurrent.Executors; import java.util.concurrent.ScheduledExecutorService; import java.util.concurrent.Semaphore; import java.util.concurrent.TimeUnit; import org.apache.log4j.Logger; public class TodoTimer { private static Logger logger = Logger.getLogger(TodoTimer.class.getName()); private TodoTimer() { } /** * 定时操作线程 */ private final static Runnable TodoOperation = new Runnable() { public void run() { try { semaphore.acquire(); //具体操作业务 Map<String, List<String>> map = JavaApp.getAllTable(); JavaApp.updataAllTable(map); } catch (InterruptedException e) { e.printStackTrace(); } finally { semaphore.release(); } } }; /** * 同步信号量 */ private static final Semaphore semaphore = new Semaphore(1); /** * 定时执行 */ private static ScheduledExecutorService scheduler = null; /** * 启动定时器 */ public static void start() { if (scheduler == null) { scheduler = Executors.newScheduledThreadPool(1); synchronized (scheduler) { scheduler.scheduleAtFixedRate(TodoOperation, 5, 60*60, TimeUnit.SECONDS); logger.info("start TODO timer!"); } } else { logger.info("TODOing!"); } } /** * 停止定时器 */ public static void stop() { synchronized (scheduler) { if (scheduler != null && !scheduler.isShutdown()) { scheduler.shutdown(); scheduler = null; logger.info("end TODO timer!"); } } } /** * 重启定时器 */ public static void restart() { stop(); start(); } public static void main(String[] args) { start(); } }
五、将代码打成jar包:javaservice.jar,并将所依赖的log4j-1.2.16.jar、sqljdbc4.jar一起拷贝到自己创建的lib目录下
六、更改wrapper.conf文件
(1)指定JVM
wrapper.java.command=C:\Program Files\Java\jdk1.7.0_67\bin\java
(2)指定所需jar包
wrapper.java.classpath.1=../lib/wrapper.jar
wrapper.java.classpath.2=../lib/javaservice.jar
wrapper.java.classpath.3=../lib/log4j-1.2.16.jar
wrapper.java.classpath.4=../lib/sqljdbc4.jar
(3)指定Java程序运行类(主类)
wrapper.app.parameter.1=com.javaapp.TodoTimer
(4)修改服务名称和描述(都用英文)
wrapper.name=JavaService
wrapper.displayname=JavaService
wrapper.description=JavaService
七、进入bin目录双击App.bat测试运行,若能运行则配置成功,双击InstallApp-NT.bat可将Java应用注册到服务中,启动服务即可
完毕!
相关推荐
总结来说,将Java应用注册为Windows服务涉及Java Agent的使用、JSW的配置以及对Windows服务管理API的理解。通过这种方式,我们可以使Java应用程序更好地融入Windows环境,实现自动化管理和监控。
通过这个工具,可以方便地将Java应用注册为Windows服务或Unix/Linux守护进程,从而实现后台运行。 #### 3. 利用操作系统服务管理工具 在Linux环境下,可以使用systemd、init.d脚本等工具;在Windows环境下,可以...
要将Java应用注册为Windows服务,我们可以利用Java的工具——`java-service-wrapper`。这是一个开源工具,允许我们将Java应用程序包装成Windows服务。它的工作原理是创建一个批处理脚本(通常在`scripts`目录下),...
通常,开发者会使用一个名为“服务包装器”(如`wapper安装windows 32bit 服务`所暗示的)的工具,它是一个可执行文件,能够将Java应用作为Windows服务来管理。服务包装器可以处理启动、停止、监视以及错误处理等...
在IT行业中,将Java应用程序转换为Windows服务是一个常见的需求,特别是在需要后台自动运行或系统启动时自动启动的应用程序场景中。下面将详细解释这个过程,以及如何利用给定的文件来实现这一目标。 首先,我们要...
JSW是一个开源工具,它允许Java应用程序以服务的形式在Windows、Linux等操作系统上运行。JSW提供了配置文件,用于指定Java应用的主类、JVM参数、环境变量等。通过这些配置,你可以轻松地将Java程序包装成一个可安装...
3. **注册服务**: 使用`javasv.exe`命令行工具将你的Java应用注册为Windows服务。例如,你可能会运行类似`javasv install -n "Hello2Service" -d C:\path\to\hello2.jar`的命令,这将创建一个名为"Hello2Service"的...
将Java应用注册为Windows服务后,你可以享受到以下好处: - 自动启动:即使用户没有登录,服务也可以在系统启动时自动运行。 - 系统级管理:可以使用Windows服务管理工具进行远程管理和监控。 - 独立于用户会话:...
在Windows操作系统中,Java应用程序可以通过特定的方式注册为服务,以便在系统启动时自动运行或以非交互模式在后台运行。这个过程涉及到Java可执行文件(JAR或EXE)与Windows服务管理框架的交互。本篇文章将深入探讨...
总结,将Java程序作为Windows服务运行,通过Winsw工具,可以使Java应用在Windows环境中更加稳定、可控。合理配置XML文件和管理服务生命周期,可以确保Java程序在Windows环境下高效、安全地运行。
3. 使用JavaService的命令行工具(如installUtil.exe)来安装服务,这会将配置好的Java应用注册为Windows服务。 4. 配置服务的启动参数,如JVM选项,可通过服务管理器或命令行工具进行设置。 5. 启动、停止或管理...
JSW允许我们将Java应用程序包装为Windows服务,它提供了启动、停止、重启等管理功能。在JSW的配置文件(如wrapper.conf)中,我们可以设置`wrapper.service.restart.delay`和`wrapper.service.restart.interval`属性...
Java应用程序在Windows操作系统中通常以命令行方式启动,但为了实现更方便的管理和自动化操作,如自动启动、系统服务级别的控制等,可以将Java的jar包注册为Windows服务。这通常涉及一个名为`winsw`的工具,它是一个...
下面是使用这三个工具将Java应用程序注册为Windows服务的步骤: 1. 安装“instsrv.exe”:将“instsrv.exe”复制到你的系统目录(如C:\Windows\System32),然后在命令行中输入`instsrv "服务名" "路径\to\srvany....
Java项目注册为服务后,就可以像其他系统服务一样被管理和控制,包括启动、停止、暂停和恢复等操作。 要将Java项目注册为Windows服务,我们需要借助一个名为`Java Service Wrapper`(简称JSW)的工具。JSW是一个...
Java注册为服务,通常指的是将一个Java应用程序转化为Windows服务,使得该程序可以在Windows操作系统后台自动启动、运行和管理,类似于其他系统服务。这种方式对于需要在系统启动时自动运行且不依赖用户登录状态的...
一旦Java程序被转换为服务,可以通过Windows服务管理器或者Wrapper提供的命令行工具进行启动、停止、重启操作。这比直接通过命令行启动Java应用更为方便,尤其是在无人值守的环境下。 **源码级别的集成** 对于...
3. **注册服务**:使用`installUtil.exe`或`sc create`命令将配置好的Java应用注册为Windows服务。注册时需要指定服务名、显示名、启动类型等信息。 4. **管理服务**:注册后,可以通过Windows的服务管理器或者...
4. **注册服务**:使用Wrapper的命令行工具(如`installService.bat`)将SpringBoot应用注册为Windows服务。这通常需要管理员权限。 5. **管理服务**:一旦服务安装完成,可以通过`services.msc`或Wrapper提供的...
标题“可运行jar注册windows服务.zip”涉及到的关键技术点是将Java的JAR文件作为Windows服务来运行。在Windows操作系统中,服务是一种在后台独立于用户界面运行的应用程序,通常用于提供系统级功能或者持续性任务。...