精华内容
下载资源
问答
  • jar包注册windows服务

    2018-07-30 16:58:20
    java程序打成jar包后,通过配置,运行脚本注册windows服务。后续可以在windows服务里进行启动、重启、禁用、自启动操作。
  • 利用WinSW将jar包注册Windows服务说明用法功能快捷键合理的创建标题,有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右...

    利用WinSW将jar包注册成Windows服务

    说明

    关于WinSW的说明在GitHub上[ 点击地址],主要讲解我此次使用WinSW注册Windows服务的过程。

    用法

    第一步:编写配置文件xml,以我的项目为例;

    // An highlighted block
    <configuration>
      !--安装成Windows服务后的服务名-->
      <id>此处为jar包名</id>
      <!--显示的服务名称-->
      <name>服务名称</name>
       <!--对服务的描述-->
      <description>服务的描述</description>
      <!--这里写java的路径,如果配置了环境变量直接写"java"就行-->
      <executable>java</executable>
    	<!--Xmx256m 代表堆内存最大值为256MB -jar后面的是项目名-->
      <arguments>-jar -XX:MetaspaceSize=128m -XX:MaxMetaspaceSize=512m -Xms1024m -Xmx2024m -Xmn256m -Xss256k -XX:SurvivorRatio=8 -XX:+UseConcMarkSweepGC jar包.jar</arguments>
      <!-- 服务启动方式:Automatic, Manual, Boot, System -->
      <startmode>Automatic</startmode>
      <!-- 日志保存路径 -->
      <logpath>%BASE%\logs</logpath>
      <!-- 日志保存方式 -->
      <log mode="roll-by-size-time">
          <sizeThreshold>10240</sizeThreshold>
          <pattern>yyyyMMdd</pattern>
          <autoRollAtTime>00:00:00</autoRollAtTime>
          <zipOlderThanNumDays>5</zipOlderThanNumDays>
          <zipDateFormat>yyyyMM</zipDateFormat>
      </log>
    </configuration>
    

    第二步:将jar包、WinSw.exe(这个文件在GitHub上有)、上一步的XML文件放在同一个文件,这三个文件名要重命名为一致。随后使用Windows命令行install即可将jar包服务注册成Windows服务。如下图所示

    放在同一个文件夹
    在这里插入图片描述
    效果图
    在这里插入图片描述

    展开全文
  • SpringBoot项目打成的jar包,需要将jar包注册windows服务 WinSW工具下载地址: https://github.com/winsw/winsw/releases 下载下面红框框的就好; sample-allOptions.xml 就是配置文件 注1:等会我们要配置的xml...

    场景:

    SpringBoot项目打成的jar包,需要将jar包注册成 windows服务

    WinSW工具下载地址:

    https://github.com/winsw/winsw/releases

    下载下面红框框的就好;

    sample-allOptions.xml  就是配置文件

    注1:等会我们要配置的xml文件的标签顺序需要按照这个文件里面的标签顺序来,否则无法启动

    创建 xml 文件

    1. 先创建一个文件夹,把上面下载的 WinSW.exe 放到文件夹里;重命名为 getUserInfoService.exe

    注意: xml 文件名 需要和 WinSW.exe 起的名字一样

    2. 然后 在此文件夹下,创建xml文件(此xml文件用来配置你要启动的jar还有命令)

    3. 把你项目打的 jar 包也放到此文件下; 下面配置文件的 -jar xxx.jar 中的jar 就是你项目的jar包

    xml 命名为: getUserInfoService.xml

    <service>
        <id>getUserInfoService</id>
        <name>getUserInfoService</name>
    	<description>a service getUserInfoService</description>
        <executable>java</executable>
        <arguments>-jar getUserInfoService.jar</arguments>
    	<startmode>Automatic</startmode>
        <logmode>reset</logmode>
    </service>

     配置文件描述:

    <service>
      <!-- 指定在Windows系统内部使用的识别服务的ID。 -->
      <id>bcht web service</id>
      <!-- 服务的简短名称 -->
      <name>bcht web service</name>
      <!-- 描述-->
      <description>A Web Service For BCHT</description>
      <!-- 该元素指定要启动的可执行文件 -->
      <executable>/web/run.bat</executable>
    </service>
    

    注册服务

    1. cmd 打开黑窗口进入你创建的文件夹里面;

    2.  敲 getUserInfoService.exe install  命令回车即可

    注意:

    如果回车报错;提示:配置文件加载失败,第几行有误;

    你要检查你的配置文件是否有空格、中文字;

    错误的示范:

    解决办法:把中文注释删掉即可

     

    正确示范:

    写成批处理文件:

    1. 在这些文件的相同目录下创建 install.bat、uninstall.bat

    2. 安装的批处理文件: install.bat 里面 写上  getUserInfoService.exe install

    3. 卸载的批处理文件:  uninstall.bat 里面写上  getUserInfoService.exe uninstall

     

     

     

    展开全文
  • 注册jar包windows服务

    千次阅读 2019-11-02 10:34:02
    可以将Windows上的任何一个程序注册服务的工具,只介绍jar包部署方式 1.下载 https://github.com/kohsuke/winsw/releases 下载完之后最好把文件改成一个比较短小的名字,例如:WinSW.exe 方便后面输入命令时...

    说明:

    • 推荐使用winsw
    • 可以将Windows上的任何一个程序注册为服务的工具,只介绍jar包部署方式

    1.下载

    https://github.com/kohsuke/winsw/releases

    下载完之后最好把文件改成一个比较短小的名字,例如:WinSW.exe 方便后面输入命令时使用。 

    同时配置文件的名字跟exe名字保持一直,我习惯将jar包和它们放一起,如图

    2.修改配置文件

    (1)id

    指定在Windows系统内部使用的识别服务的ID。在系统中安装的所有服务中,这必须是唯一的,它应该完全由字母数字字符组成。

    (2)name

    服务的简短名称,它可以包含空格和其他字符。尽量简短,就像“id”一样,在系统的所有服务名称中,也要保持唯一。

    (3)description

    该服务可读描述。当选中该服务时,它将显示在Windows服务管理器中。

    (4)executable

    该元素指定要启动的可执行文件。它可以是绝对路径,也可以指定可执行文件的名称,然后从环境变量“PATH”中搜索(需要注意的是,服务经常在不同的用户账户中运行,因此它可能需要有不同于你设置在环境变量Path中的路径)。

    (5)startmode

    该元素指定Windows服务的启动模式。它可以是下列值之一:开机、系统、自动或手动。有关详细信息,请参阅MSDN【https://msdn.microsoft.com/en-us/library/aa384896%28v=vs.85%29.aspx】。默认值是“Automatic”。

    (6)delayedAutoStart

    这个布尔选项允许在定义“自动”启动模式时延时启动。关于延时启动模式,可参阅【https://blogs.technet.microsoft.com/askperf/2008/02/02/ws2008-startup-processes-and-delayed-automatic-start】。

    请注意,延时启动模式在早于Windows 7和Windows Server 2008的操作系统中可能失效。在这种情况下,Windows服务安装可能会失败。

    (7)depend

    指定该服务所依赖的其他服务的id。当服务“X”依赖于服务“Y”时,“X”只能在“Y”运行后运行。可以使用多个元素来指定多个依赖项。

    (8)logging

    关于服务进程的日志以及错误信息,有单独的一个配置说明文档【WinSW Logging and Error Reporting】,咱们下次再详细说。

    (9)argument

    该元素指定要传递给可执行文件的参数。

    如果有必要,Winsw会给每一个参数外加引号(“”),所以为了避免双重引号,尽量不要在参数中使用引号。

    为了向后兼容,可以使用“arguments”来指定单个元素中的整个命令行。

    (10)stopargument/stopexecutable

    请求停止服务时,winsw通过调用终止进程的API函数来立即终结服务。然而,如果存在“stopargument”元素,winsw将通过使用”stopargument“作为参数,来启动“executable“元素(或者是”stopexecutable“元素)中配置的进程,来代替调用终止进程的API函数。期望通过这种方式来优雅的关闭服务进程。

    然后,Winsw将等待两个进程自行退出,然后向Windows报告该服务已经终止。

    当你使用“stopargument”元素时,你必须使用“startargument”元素代替“argument”元素。参见下面的完整示例:

    catalina.sh

    jpda

    run

    catalina.sh

    stop

    注意,元素的名称是“startargument”,而不是“startarguments”。因此,要指定多个参数,你必须指定多个元素。

    (11)stoptimeout

    当服务被要求停止时,winsw首先尝试调用GenerateConsoleCtrlEvent 方法(类似于Ctrl+C),然后等待长达15秒的时间,让进程自行退出。

    如果这样做了,进程关闭还是失败了(或者如果进程没有控制台),

    然后winsw会调用终止进程的API函数来立即终止服务。

    这个可选元素允许您改变这个“15秒”的值,这样您就可以控制winsw等待服务进程自行关闭的时间。

    如何指定时间期限,可参考下面的“onfailure”元素的设置:

    10sec

    (12)env

    如果有必要,可以使用这个可多次指定的可选元素,为子进程设置环境变量。其语法是:

    (13)interactive

    如果指定了这个可选的元素,那么该服务将被允许与桌面交互,比如显示一个新的窗口和对话框。

    如果你的程序需要GUI,那么设置如下:

    请注意,自从引入UAC(Windows Vista及之后的版本)以来,服务不再被允许与桌面交互。

    在这些操作系统中,所有这一切都是为了允许用户切换到一个单独的窗口来与服务交互。

    (14)beeponshutdown

    这个可选元素是为了在服务关闭时发出简单的音调。

    这个特性应该只用于调试,因为一些操作系统和硬件不支持这种功能。

    (15)download

    这个可选元素可以多次指定,让服务包装器从URL检索资源,并将其作为文件放置在本地。这个操作是在服务启动时运行的,在“executable”指定的应用程序启动之前。

    对于需要身份验证的服务器,必须根据认证的类型指定一些参数。只有基本身份验证需要额外的子参数。支持的身份验证类型是:

    none:默认类型,不能指定

    sspi:微软认证,包括Kerberos、NTLM等。

    basic:基本身份认证,子参数包括:

    1)user=“UserName”

    2)password=“Password”

    3)unsecureAuth=“true”:default=“false”

    当传输协议是未加密的HTTP数据传输时,参数“unsecureAuth”才生效。这是一个安全漏洞,因为凭证是用明文发送的!对于SSPI认证,这是不相关的,因为身份验证令牌是加密的。

    对于使用HTTPS传输协议的目标服务器这是必须的,因为服务器发出的CA证书是客户端信任的。这通常是服务器在Internet上的情况。当一个组织在内网中使用自发布的CA时,情况可能不是这样。在这种情况下,有必要将CA导入到Windows客户端的证书MMC。可以看一下微软的说明(https://technet.microsoft.com/en-us/librar/cc754841.aspx)。自发布CA必须被导入到计算机的受信任的根证书颁发机构。

    默认情况下,如果操作失败(例如,无效的下载地址),“download”命令也不会在服务启动时失败。为了在这种情况下强制下载失败,可以指定“failOnError”布尔属性。示例如下:

    这是开发自动更新服务的另一个有用的构建块。

    (16)onfailure

    这个可选的可重复元素控制了winsw启动的进程失败后的行为(例如,执行带有非零退出码的退出操作)。

    例如,上面的配置使服务在第一次故障后10秒内重新启动,在第二次失败后20秒重新启动,如果服务再次失败,Windows将重新启动。

    每个元素都包含一个强制的“action”属性,它控制着Windows SCM将要做什么,以及可选的“延迟”属性,它控制着延迟,直到采取行动为止。“action”属性的值包含以下几种:

    restart:重启服务

    reboot:重启系统

    none:什么也不做,就让服务那么停着

    延迟属性的可能后缀是sec/secs/min/mins/hours/day/days。如果未设置,延迟属性默认为0。

    如果服务持续失败的次数超出了配置的“onfailure”的数量,那么最后的操作将会被重复。因此,如果只是想要自动重启服务,只需指定一个“onfailure”元素即可:

    (17)resetfailure

    这个可选元素控制了Windows SCM重新设置故障计数的时间。

    例如,如果指定``,并且您的服务持续运行超过一个小时,那么故障计数将重置为零。

    这会影响故障操作的行为(见上面的“onfailure”)。

    换句话说,这是你认为服务已经成功运行的持续时间。

    默认值为1天。

    (18)Service account

    有可能需要指定服务运行所需要的的useraccount(和密码)。要做到这一点,可以按照下面的方法指定一个“serviceaccount”元素:

    YOURDOMAIN

    useraccount

    Pa55w0rd

    true

    “”是可选的。如果设置为“true”,则会自动给上面列出的用户设置“Allow Log On As A Service”的权限。

    可以使用(组)管理服务帐户 附加'$'到帐户名称,并删除'password'元素:

    YOURDOMAIN

    gmsa_account$

    true

    (19)Working directory

    有些服务需要使用指定的工作目录运行。

    要做到这一点,要指定一个像这样的“workingdirectory”元素:

    C:\application

    (20)priority

    可选地指定服务流程的调度优先级(类似于Unix)。可能的值有“idle”、“belownormal”、“normal”、“abovenormal”、“high”、“realtime”(大小写不敏感)。

    idle

    指定高于正常值的优先级会产生意想不到的后果。请参阅MSDN文章ProcessPriorityClass Enumeration来了解详细信息。

    这个特性主要是为了在较低的优先级上启动一个进程,以避免干扰计算机的交互使用。

    (21)stopparentprocessfirst

    可选地指定服务关闭的顺序。

    如果“true”,父进程首先关闭。

    当主进程是一个控制台时,这是很有用的,它可以响应Ctrl+C命令,并优雅地关闭子进程。

    true

      (22) log/logpath日志的路径

    我只使用了简单的几个,如图

     3.命令说明:

    winsw install 安装服务

    winsw uninstall 卸载服务

    winsw start 开启服务

    winsw stop 停止服务

    winsw restart 重新启动服务

    winsw status 检查服务的当前状态
     

    4.部署服务

    将配置文件与WinSW.exe放在同一目录中。注意对应WinSW.exe的配置文件名称应该是WinSW.xml,

    打开cmd,cd进入到应用程序所在目录

    如果报以下错,说明是非管理员启动,

     选择管理员启动即可,成功如下

     启动服务后会有日志生成

    5.卸载服务

    同理cd 到该目录 ,执行winsw uninstall命令即可

     

    资料:https://cloud.tencent.com/developer/news/246538

    展开全文
  • @echo off title redis-server set ENV_HOME=“D:\JavaSoft\redis” D: color 04 ...注册服务 redis-server --service-install redis.windows.conf 删除服务 redis-server --service-uninstall 开启

    只限Windows系统中,jar包注册服务需要配置java环境变量
    redis快捷启动 ,复制到批处理文件中

    @echo off
    title redis-server
    set ENV_HOME="D:\JavaSoft\redis"
    D:
    color 04
    cd %ENV_HOME%
    redis-server.exe redis.windows.conf
    exit
    

    注册成服务,不用再手动打开批处理文件,开机自动启动服务
    在redis目录打开cmd

    注册服务   redis-server --service-install redis.windows.conf
    
    删除服务   redis-server --service-uninstall
    
    开启服务   redis-server --service-start
    
    停止服务   redis-server --service-stop
    

    jar包注册成服务,开机自动启动
    下载exe文件,用来安装服务,提取码chen
    新建一个xml文件,和下载的exe文件同名

    <service>
         <!-->id 指定在Windows系统内部使用的识别服务的ID。在系统中安装的所有服务中,这必须是唯一的</-->
         <id>CSDN</id>
         <!-->name 服务的简短名称,它可以包含空格和其他字符。尽量简短,就像“id”一样,在系统的所有服务名称中,也要保持唯一</-->
         <name>Csdn-chen</name>
         <!-->description 该服务可读描述。当选中该服务时,它将显示在Windows服务管理器中</-->
         <description>CSDN测试程序</description>
         <!--env 为子进程设置环境变量-->
         <env name="JAVA_HOME" value="%JAVA_HOME%"/>
         <!--executable 要启动的可执行文件。它可以是绝对路径,也可以指定可执行文件的名称-->
         <executable>java</executable>
         <!--arguments 指定要传递给可执行文件的参数-->
         <arguments>-jar "D:\项目jar包\csdn.jar"</arguments>
         <!--Automatic 指定Windows服务的启动模式。它可以是下列值之一:开机、系统、自动或手动-->
         <startmode>Automatic</startmode>
         <!--logpath 关于服务进程的日志以及错误信息-->
         <log mode="append">
    	   <logpath>D:\logs\log</logpath>
         </log>
     </service>
    

    把jar包 exe和xml文件放同一个目录
    在这里插入图片描述在当前目录打开cmd
    输入 csdn.exe install
    在这里插入图片描述服务已经安装成功
    输入services.msc可以查看服务
    在这里插入图片描述删除服务 cmd sc delete csdn(服务名)
    在这里插入图片描述

    展开全文
  • 一、下载winsw 二进制可执行文件下载地址:http://repo.jenkins-ci.org/releases/com/sun/winsw/winsw/ ... 提取码:xoql 二、放置jar包 需要启动服务jar包,放在与winsw的bin木同级目录下; 并且创建wins...
  • Jar包注册windows服务

    2019-10-07 16:28:32
    ... 没有安装.net的需要先安装。...打开cmd,cd到jar包目录下 执行 demo.exe install安装服务,就可以在windows服务里看到了 转载于:https://www.cnblogs.com/yangrui-Heart/p/11438237.html
  • 该软件只需要配置一个xml,然后把需要注册服务jar名称跟exe和xml名称统一,cmd打开执行exe就注册
  • 配置windows环境变量,添加一个 MYAPP_HOME ,值为 E:\project\bin 。 你的文件结构看起来应该是这样的: E盘 project MyApp.exe MyApp.xml bin MyApp.jar 最后在控制台,执行 MyApp.exe install ,...
  • WindowsJAVA jar注册windows服务

    千次阅读 2019-05-09 17:52:11
    java jar注册windows服务 tags:windows java 下载Windows Service Wrapper github下载 安装windows服务 java jar包和下载的WinSW.NET4.exe放在同一个文件夹目录下面 重命名WinSW.NET4.exe为MyApp.exe(这个...
  • 二、将注册工具放到指定目录,重命名为服务名称(jar包名称,也是注册windows上的服务名称) 三、注册工具相同目录下写同名配置文件front-end-machine.xml <!-- Copyright (c) 2016 Oleg Nenashev and ...
  • 如何将jar包加入windows服务

    千次阅读 2019-05-13 15:47:54
    如何将jar包加入windows服务 下载winsw 编写于exe文件同名的xml配置文件 <service> <!-- ID of the service. It should be unique accross the Windows system--> <id>dam</id> &...
  • linux执行jar包服务直接java -jar 就可以,但是在windows服务器时要在终端执行此命令,终端关闭则服务停止,所有要做成windows服务器自身的服务,如下下所示。 二、操作 2.1 工具winsw,下载地址:...
  • nssm在windows服务器上部署nodejs,coffee启动方式 本想用forever / pm2&nbsp;来部署nodejs, 百度后发现只能在Linux系统上使用,window上没法使用,兜一圈后又转nssm了。。。。 &nbsp; 在Linux上,可以...
  • Spring boot 部署jar包注册windows自动服务,里面包含了详细的部署步骤和部署需要的程序还有配置文件。我的部署成功了。
  • jar包注册windows系统服务步骤

    千次阅读 2019-02-26 10:48:35
    2、注册服务后,环境随系统开启,不再需要每次手动启动并保留dos环境窗口! # 步骤一: jar包和bat运行文件在同一目录下 1、编辑bat文件,需要注意的是“cd D:\API_offline” 是我们的jar包存放路径; 2、...
  • 15 <arguments>-jar "F:\test\YJPSS.jar" 16 17 <!-- 开机启动 --> 18 19 <startmode>Automatic 20 21 <!-- 日志配置 --> 22 23 <logpath>%BASE%\log 24 25 <logmode>rotate 26 27    
  • 将jar打包成windows系统服务,并实现开机自启 ** 前阵子系统部署到客户服务器上后,比较坑的是客户那边机房经常停电。客户不会自己启动服务(实际只要双击几个图标就行)。于是计划给他们搞一个开机自启。 ...
  • 现在我想把它做成一个服务,用了javaservice.exe工具,虽然提示注册成功,也能启动服务,但我给它发送数据,根本收不到,我做的日志里只记录到端口号打开了,但没有收到数据记录。webservice功能也不可用。 日志只...
  • #一、打包 ##(因为项目在IDEA上,所以直接用IDEA快捷打包方式) ###1)打开右侧边栏Maven ###2)进行打包,点击package(需要注意的是:一个项目应该有且只有一个主类,这里为...###1)使用Procrun 注册windows
  • Windows版 ... ... 解压到文件夹找到64位的nssm.exe(因需而...将jar包拷贝到当前目录(也可以放到别的目录,这里是为了方便) 新建reg.bat文件,内容如下 mycam2 是服务的真实名字 nssm install webcam2 %JAVA_HOME%\bi...
  • 然后我使用了javaservice将jar包制作成windows服务,安装成功。但是不论是在cmd中使用net start ServiceName 还是到服务列表手动启动,都不能启动,百度了好久,也换过代码甚至工具,都是可以安装成功,启动失败,如...
  • java jar包注册Windows 服务 JavaService

    千次阅读 2014-10-29 11:53:34
    把java jar包注册windows系统服务,可以先把java程序已exe形式发布,然后根据windows提供的相应方法去注册服务,不过生成exe需要很麻烦。所以改用javaservice javaservice 可以在官网直接下载,一下是到目前...
  • 百度云链接资源 ... 3jod 里面有四个文件 把四个文件放到需要设置成服务jar包目录下 .xml文件 配置服务名 配置环境变量 运行jar文件命令 .exe cmd 当前所在目录~.exe install 注册服...
  • 使用Spring Boot开发的项目,打包生成了一个jar包,希望能部署在Windows服务器中 可尝试: 1、Spring Boot生成的jar包,可以直接用java -jar运行,但是前提是需要登录用户,而且注销用户后会退出程序,所以不可信...
  • 最近工作在windows服务器上部署 spring boot 的jar包之前都是在linux上运行命令: nohup java -jar xxx.jar &gt; xxx.log &amp;现在为了达到跟Linux一样的效果。最终方案:使用winswwinsw是一个开源项目,...
  • windows系统我们使用maven打包springboot为JAR包,运行时采用命令窗口,但是只要命令窗口关闭,或电脑注销项目也就关闭了,又没有什么工具可以快速帮助我们实现系统启动项目自动运行?答案是有的,那就是winsw ...
  • java应用(springboot jar)注册Windows服务

    万次阅读 热门讨论 2018-07-30 14:00:58
    java应用程序jar注册windows服务随机自启动,不再需要命令窗口打开,避免误操作。以springboot为例。 首先准备好一个完整的springboot项目,我们修改pom.xml文件,其打包成jar 使用eclipse打包,右击项目...
  • java Service Wrapper项目用于将jar包注册为系统服务,支持windows及linux等系统。 项目下载地址:http://wrapper.tanukisoftware.com/doc/english/download.jsp 本文档使用的是:wrapper-windows-x86-64-3.5.30...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 25,268
精华内容 10,107
关键字:

windows将jar包注册服务