TomCat中startup.bat文件一闪而过解决方法(超详细)

TomCat中startup.bat文件一闪而过解决方法(超详细)

​ 今天启动tomcat时,双击startup.bat文件一闪而过真是弄得我头疼,网上的解决方案都不见效,花了好些时间才解决,同时也了解到很多新玩意。

环境

  • jdk:17.0.1(2021年12月下载)
  • Tomcat:10.0.20(2022年4月下载)
  • 皆为当时最新版

解决

​ 首先,我们先不让他一闪而过,看看是什么原因,编辑startup.bat文件,在最后加上pause命令(解决后删掉)。这时它提示我找不到jre环境变量,去网上找解决方案都是说jdk环境变量没有配置好,但是我很奇怪,我确实没有配置过jdk环境变量,但是平时可以正常使用(懒得),所以为什么找不到jre环境变量呢?然后我就去看我的系统环境变量,让我发现了一条:C:\Program Files\Common Files\Oracle\Java\javapath。这是他自动给我配置好的吗?好奇与疑问,我顺着文件路劲,确实java.exe、javac.exe、javaw.exe、jshell.exe文件在这里。我又开始网上冲浪,答案确实是他自己配的,它将这几个命令复制到了C:\Program Files\Common Files\Oracle\Java\JavaPath。而Tomcat要的是JAVA_HOME这个环境变量。于是我配置好了该环境变量。

​ 然后在我配置jre环境变量时,我发现没有。又开始冲浪,然后发现在jdk1.8之后都没有。需要在相应的jdk安装目录下打开命令行,输入:bin\jlink.exe --module-path jmods --add-modules java.desktop --output jre,才会显示出来。

​ OK,还是不行。继续冲浪,发现原因:后来较新版本安装完不会自动登记环境变量JAVA_HOME,JRE_HOME。又是在这个文件登记环境变量JAVA_HOME,JRE_HOME,又是在那个文件加什么东西,通通试了,没用。

​ 终于,找到解决方案,在tomcat的bin目录下的setclasspath.bat中添加:set JRE_HOME=jre位置。还是不行,因为11版本后的jdk默认已经安装了jre,所以,JRE_HOME设置乘和JAVA_HOME一致即可。所以最后最后,在tomcat的bin目录下的setclasspath.bat中添加:set JRE_HOME=jdk位置。成功!!!!

​ 啊对成功了,但没完全成功,命令行中文乱码,虽然不影响运行,但是我TM的受不了啊。继续找问题,OKOK,电脑系统默认字符集为GBK,但tomcat是utf-8,OK简单,我把tomcat也换成GBK就好了:修改conf文件下的logging.properties文件,将控制台输出的编码修改为GBK:java.util.logging.ConsoleHandler.encoding = GBK。

​ 终于解决了。

  • 14
    点赞
  • 36
    收藏
    觉得还不错? 一键收藏
  • 9
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 9
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值