如何让Tomcat在指定JDK版本下启动 而不依赖环境变量中配置的版本

今天给客户部署软件时遇到了一个尴尬的问题:我们的软件只有部署在JDK1.7环境的tomcat下才会比较稳定。而客户的服务器上装的是JDK1.8,而且他们的环境还不能变,因为服务器中的其他程序都是依赖JDK1.8的环境开发的。他们又不能单独部署。后来经过查资料发现tomcat可以自己指定JDK环境的版本和JDK的路径。下面就把指定的步骤和大家说下,主要是修改文件。根据系统的不同,分为windows的配置和linux的配置。

windows

 

1、解压下载的tomcat;

 

2、找到bin下的setclasspath.bat文件;在文件的开始出添加如下代码:

 

 

set JAVA_HOME=D:\Program Files\Java\jdk7\jdk1.7.0_51
set JRE_HOME=D:\Program Files\Java\jdk7\jre7

 

 

 

 

 

上面的意思是设定JAVA_HOME和JRE_HOME的路径;

 

通过这里我们可以看出可以不设置JDK的环境变量;

 

linux

 

在bin下找到setclasspath.sh,在文件的最开始加入如下代码:

 

 

export JAVA_HOME=/home/jdk/Java\jdk7\jdk1.7.0_51
export JRE_HOME=/home/jdk/Java\jdk7\jre7

 

 

 

 

 

 

 

修改了setclasspath文件之后,tomcat在启动时便使用设定的JDK。

 

但是为什么这样设置之后就可以呢?

 

我们都知道启动tomcat可以通过运行bin下的startup.bat,startup.bat会调用catalina.bat文件,而catalina.bat会调用setclasspath.bat文件来获取JAVA_HOME和JRE_HOME这两个环境变量的值,因此若要在tomcat启动时指向特定的JDK,则需在setclasspath.bat文件的开头处加上JAVA_HOME和JRE_HOME。

 

基于上面的运行方式,还有第二种修改方式,如下:

 

1、修改tomcat/bin/catalina.bat,增加 set JAVA_HOME=D:\Program Files\Java\jdk7\jdk1.7.0_51

 

2、修改tomcat/bin/setclasspath.bat,同样增加

 

 

set JAVA_HOME=D:\Program Files\Java\jdk7\jdk1.7.0_51

set JRE_HOME=D:\Program Files\Java\jdk7\jre7

 

 

 

 

 

 

 

 

这两种方式使用任何一种都可以实现修改tomcat的依赖JDK环境,同时可以不配置JDK的环境变量。

 

有不正之处欢迎指正,谢谢!

  • 6
    点赞
  • 27
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 8
    评论
当使用JDK 17启动Tomcat时出现一闪而过的情况可能有几种可能的原因。首先,你需要确保已经正确安装了JDK配置环境变量。可以通过在命令提示符下使用"java -version"命令来验证JDK的安装情况和版本。如果输出结果没有问题,则可以考虑以下几点: 1. 检查Tomcat启动脚本是否正确配置。在启动Tomcat之前,确保你已经解压了Tomcat并双击了startup.bat脚本。如果黑窗口闪退,你可以检查一下黑窗口是否有任何报错信息。 2. 检查环境变量配置是否正确。确认JAVA_HOME和PATH这两个环境变量都正确指向JDK的安装路径。 3. 检查是否缺少必要的jar文件。如果在启动Tomcat时遇到NoClassDefFound错误,这可能意味着缺少某些依赖的jar文件。你可以检查JDK的lib和jre/lib目录下是否存在相关的jar文件。 如果以上方法都没有解决问题,还可以尝试终止已经运行的其他Tomcat服务,然后再次尝试启动你自己的Tomcat。有时候,多个Tomcat实例同时运行会导致冲突。 总结起来,当使用JDK 17启动Tomcat一闪而过时,你需要确保JDK正确安装和配置Tomcat启动脚本正确、环境变量正确设置,并检查是否缺少必要的jar文件。如果问题仍然存在,可以尝试终止其他Tomcat服务并重新启动Tomcat。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *3* [Tomcat启动一闪而过就消失的原因和解决方法](https://blog.csdn.net/Bejpse/article/details/126536147)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 50%"] - *2* [完美解决Tomcat启动一闪而过](https://blog.csdn.net/EasyGoing_Zx/article/details/120486897)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

一步一台阶

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值