Tomcat启动时一闪而过,但是jdk环境变量配置正确,并使用java或者javac命令多可以运行,但是tomcat不能运行解决办法。


今天在使用tomcat6.0.7时出现Tomcat启动时一闪而过,但是jdk环境变量配置正确,并使用java或者javac命令多可以运行,但是tomcat不能运行解决办法。



1.在命令行中直接启动tomcat时查看错误信息 如; 


C:\Users\Administrator>
C:\Users\Administrator>cd D:\apache-tomcat-6.0.37\bin

C:\Users\Administrator>d:

D:\apache-tomcat-6.0.37\bin>startup.bat
The JAVA_HOME environment variable is not defined correctly
This environment variable is needed to run this program
NB: JAVA_HOME should point to a JDK not a JRE
D:\apache-tomcat-6.0.37\bin>
D:\apache-tomcat-6.0.37\bin>


2.根据以上信息,配置java_home路径:如java_home="D:\Program Files\java\jdk1.6.0_21\bin"
配置jre路径: jre_home="D:\Program Files\java\jdk1.6.0_21\jre"

3.重新启动tomcat。

4.如果以上配置完成还是不能启动,请看下面配置.

5.由于tomcat的startup.bat启动时,调用的是catalina.bat ,而catalina.bat调用了setclasspath.bat
在setclasspath.bat中配置的就是tomcat运行时所需的jar包及使用所需的类。
在setclasspath.bat的头部配置JAVA_HOME和JRE_HOME的值。如下:


set JAVA_HOME=D:\Program Files\java\jdk1.6.0_21
set JRE_HOME=D:\Program Files\java\jdk1.6.0_21\jre


6.配置完成再次启动tomcat即可。




setclasspath.bat文件如下:


@echo off
rem Licensed to the Apache Software Foundation (ASF) under one or more
rem contributor license agreements.  See the NOTICE file distributed with
rem this work for additional information regarding copyright ownership.
rem The ASF licenses this file to You under the Apache License, Version 2.0
rem (the "License"); you may not use this file except in compliance with
rem the License.  You may obtain a copy of the License at
rem
rem     http://www.apache.org/licenses/LICENSE-2.0
rem
rem Unless required by applicable law or agreed to in writing, software
rem distributed under the License is distributed on an "AS IS" BASIS,
rem WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
rem See the License for the specific language governing permissions and
rem limitations under the License.


rem ---------------------------------------------------------------------------
rem Set CLASSPATH and Java options
rem
rem $Id: setclasspath.bat 908749 2010-02-10 23:26:42Z markt $
rem ---------------------------------------------------------------------------


set JAVA_HOME=D:\Program Files\java\jdk1.6.0_21
set JRE_HOME=D:\Program Files\java\jdk1.6.0_21\jre






rem Make sure prerequisite environment variables are set
if not "%JAVA_HOME%" == "" goto gotJdkHome
if not "%JRE_HOME%" == "" goto gotJreHome
echo Neither the JAVA_HOME nor the JRE_HOME environment variable is defined
echo At least one of these environment variable is needed to run this program
goto exit


:gotJreHome
if not exist "%JRE_HOME%\bin\java.exe" goto noJavaHome
if not exist "%JRE_HOME%\bin\javaw.exe" goto noJavaHome
if not ""%1"" == ""debug"" goto okJavaHome
echo JAVA_HOME should point to a JDK in order to run in debug mode.
goto exit


:gotJdkHome
if not exist "%JAVA_HOME%\bin\java.exe" goto noJavaHome
if not exist "%JAVA_HOME%\bin\javaw.exe" goto noJavaHome
if not exist "%JAVA_HOME%\bin\jdb.exe" goto noJavaHome
if not exist "%JAVA_HOME%\bin\javac.exe" goto noJavaHome
if not "%JRE_HOME%" == "" goto okJavaHome
set "JRE_HOME=%JAVA_HOME%"
goto okJavaHome


:noJavaHome
echo The JAVA_HOME environment variable is not defined correctly
echo This environment variable is needed to run this program
echo NB: JAVA_HOME should point to a JDK not a JRE
goto exit
:okJavaHome


if not "%BASEDIR%" == "" goto gotBasedir
echo The BASEDIR environment variable is not defined
echo This environment variable is needed to run this program
goto exit
:gotBasedir
if exist "%BASEDIR%\bin\setclasspath.bat" goto okBasedir
echo The BASEDIR environment variable is not defined correctly
echo This environment variable is needed to run this program
goto exit
:okBasedir


rem Don't override the endorsed dir if the user has set it previously
if not "%JAVA_ENDORSED_DIRS%" == "" goto gotEndorseddir
rem Set the default -Djava.endorsed.dirs argument
set "JAVA_ENDORSED_DIRS=%BASEDIR%\endorsed"
:gotEndorseddir


rem Set standard command for invoking Java.
rem Note that NT requires a window name argument when using start.
rem Also note the quoting as JAVA_HOME may contain spaces.
set _RUNJAVA="%JRE_HOME%\bin\java"
set _RUNJDB="%JAVA_HOME%\bin\jdb"


goto end


:exit
exit /b 1


:end
exit /b 0
  • 1
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
使用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 ]

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

starsky20

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

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

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

打赏作者

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

抵扣说明:

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

余额充值