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

Tomcat添加到Windows系统服务中,服务名称带空格

        要将Tomcat添加到Windows系统服务中,可以通过Tomcat安装目录中“\bin\service.bat”来完成,如果目录中没有service.bat,则需要使用其它方法。

        打到CMD命令行窗口,通过cd命令跳转到Tomcat安装目录的“\bin\”目录,然后执行如下命令:“service.bat install Apache Tomcat9.0.63”。此时会出现如下结果:

        系统服务列表则会显示如下:

         

        可以看到,服务名称中少了“Apache ”,而显示名称前面则多了“Apache Tomcat 9.0”,这不符合我们的预期。问题应该就出现在service.bat这个脚本文件里,因为上面执行的命令语句很简单,只涉及到这个脚本文件。查检脚本文件后,发现这段代码:

        可以看到“--DisplayName”的值带了“Apache Tomcat 9.0 ”,“%SERVICE_NAME%”则是通过执行命令语句带进来的(不过只取了最后一个空格的后面部分,所以少了“Apache ”)。我们可以把“Apache Tomcat 9.0 ”这部分去掉,这样添加后的服务“显示名称”就不会自动带有一个前缀了。

        修改脚本保存后,我们需要先删除前面添加的服务,通过如下命令:

        然后再执行添加命令,可以看到系统服务列表显示如下:

      

        虽然前缀没了,但是服务名称仍然不是预期的“Apache Tomcat9.0.63”。于是我在命令语句中给服务名称加上了引号,结果如下:

        这是脚本内的语法有问题,不支持处理带有引号的参数。这里就不去处理这个BUG了,我直接用了简单粗暴的方法--在脚本开头中设置服务名称,并在命令行“//IS//%SERVICE_NAME%”上加了一对引号:

        执行结果和系统服务系统显示如下:

  

        到此,我们就将Tomcat服务名称和显示名称设置为符合预期的名称了。


http://www.kler.cn/a/540322.html

相关文章:

  • CSS 伪类(Pseudo-classes)的详细介绍
  • 链表(LinkedList) 1
  • Nginx部署Umi React前端项目标准配置
  • 消息队列MQ
  • 【03】 区块链分布式网络
  • 【SpringBoot篇】基于Redis分布式锁的 误删问题 和 原子性问题
  • 81页精品PPT | 华为流程与信息化实践与架构规划分享
  • 多头自注意力中的多头作用及相关思考
  • 《我在技术交流群算命》(三):QML的Button为什么有个蓝框去不掉啊(QtQuick.Controls由Qt5升级到Qt6的异常)
  • 深入理解QT的View-Model-Delegate机制和用法
  • 开发指南098-logback-spring.xml说明
  • C# 学习目录
  • 海外直播场景下的AWS技术架构设计与实践
  • 【医院管理会计专题】2.管理会计:医院运营管理的隐形引擎
  • AutoMQ 如何实现没有写性能劣化的极致冷读效率
  • 11g ADG主备切换步骤
  • 【JAVA使用Aes加密报错:Illegal key size or default parameters,如何解决?】
  • FFmpeg 学习路径
  • VeryReport和FineReport两款报表软件深度分析对比
  • 只需三步!5分钟本地部署deep seek——MAC环境
  • MongoDB 的使用场景
  • Transformers as SVM(2023 NIPS)
  • react概览webpack基础
  • zynq tcp万兆网和ftp协议分析
  • 如何查看用户的详细身份信息
  • 向量数据库简单对比