当前位置: 首页 > news >正文

Windos下设置java项目开机自启动

这里是将java项目注册为Windows服务实现开机自启动。

查看.NET framework版本

因为使用winsw工具运行时需要使用.NET framework,基本上现在的win10系统带自带有.NET framework4.0,为了选择合适的版本,我们可以查看本机.NET Framework版本,根据版本选择适合的winsw版本。

  • 打开本地资源管理器,地址栏输入C:\Windows\Microsoft.NET\Framework,进入目录
  • 查看当前目录下.NET Framework版本
    在这里插入图片描述
    可以看出最高版本为4

winsw

winsw工具,全名Windows Service Wrapper,是一款使用C#开发的小工具。
它的使用原理就是winsw.exe本身注册为windows服务,可以设置为自启动。当它启动时,配合exe同名的xml文件中的配置,执行设置的命令,达到自启动的效果。
winsw开源地址:https://github.com/winsw/winsw
我使用的是v2.11.0版本,下载地址:https://github.com/winsw/winsw/releases/tag/v2.11.0
在这里插入图片描述
根据.Net Framework版本下载即可,如:WinSW.NET4.exe
sample-minimal.xml 是一个最小配置的列子。
sample-allOptions.xml 是一个全部可配置参数的例子。

修改及配置

  1. 将winsw.exe名称改为具有实际意义的名称,因为注册后服务启动的exe就是这个exe,服务列表中显示的名称也是这个名称,一般与sample-minimal.xml一样,一起修改为与Springboot项目打包的jar同名,如appstore.exe、appstore.xml、appstore.jar
    在这里插入图片描述
  2. xml设置
<service><!-- 服务名称 --><id>test</id><name> appstore </name><description>应用市场</description><!-- java环境变量 --><executable>java</executable><arguments>-Dspring.profiles.active=prod -server -Xms512m -Xmx1024m -XX:MaxNewSize=1024m -XX:MaxPermSize=1024m -XX:CompressedClassSpaceSize=512m -XX:MetaspaceSize=512m -XX:MaxMetaspaceSize=512m -jar "%BASE%\appstore.jar"</arguments><!-- 开机启动 --><startmode>Automatic</startmode><!-- 日志配置 --><logpath>%BASE%\log</logpath><logmode>rotate</logmode></service>

相关参数说明如下:

  • id:安装windows服务后的服务ID,必须是唯一的。
  • name:服务名称,也必须是唯一的。一般和id一致即可。
  • description:服务说明,可以使用中文,可做备注使用。
  • executable:执行的命令,比如启动springboot应用的命令java。
  • arguments:命令执行参数,比如 包路径,类路径等。

配置完之后,把appstore.exe、appstore.xml、appstore.jar放到同一目录下

注册服务

在Java项目文件夹地址栏里输入cmd,执行命令即可安装注册。

appstore.exe install

在这里插入图片描述
在这里插入图片描述

工具其他命令

命令行含义
appstore.exe install安装服务
appstore.exe start启动服务
appstore.exe stop停止服务
appstore.exe restart重启服务
appstore.exe uninstall删除服务
appstore.exe status查看状态
http://www.lryc.cn/news/57992.html

相关文章:

  • (链表)移除链表元素(双指针法)
  • Raft协议
  • 动态规划概述
  • CPU缓存架构+Disruptor内存队列
  • Spark SQL join操作详解
  • 设计模式-day04
  • 线段树的学习(2023.4.5)
  • Java 实现excel、word、txt、ppt等办公文件在线预览功能
  • 《Vue3实战》 第九章 路由
  • ToBeWritten之物联网Zigbee协议
  • 【万象奥科】RZ/G2UL网关内存压力测试
  • C++中的继承
  • SpringRetry接口异常优雅重试机制
  • 2023年全国最新高校辅导员精选真题及答案46
  • 程序员为了女朋you进了华为,同学去了阿里,2年后对比收入懵了
  • Linux中的算法分离手段
  • 机器学习实战:Python基于Logistic逻辑回归进行分类预测
  • Leetcode.404 左叶子之和
  • Android 11.0 原生SystemUI下拉通知栏UI背景设置为圆角背景的定制(二)
  • C语言CRC-16 IBM格式校验函数
  • Maven高级-聚合和继承
  • 如何写出10万+ Facebook 贴文?
  • 图像处理数据集
  • 文本聚类与摘要,让AI帮你做个总结
  • leaflet实现波动的marker效果(131)
  • 关于Dataset和DataLoader的概念
  • 前端与JS变量
  • 初始SpringBoot
  • vue+springboot 上传文件、图片、视频,回显到前端。
  • java入门-W3(K81-K143)