由于环境变量配置引起的Tomcat启动时一闪而过

时间:2022-06-09 08:36:00

启动Tomcat时,一闪而过,看不出启动过程中发生了什么错误。查找资料,可以使用run命令,打开startup.bat文件,找到下面这行:

call "%EXECUTABLE%" start %CMD_LINE_ARGS%

修改为:

call "%EXECUTABLE%" run %CMD_LINE_ARGS%

修改文件后,需要从DOS命令行窗口进入到%TOMCAT_HOME%\bin路径下,然后启动startup.bat文件,可以看到打印出的错误信息。

如果打印“JAVA_HOME should point to a JDK not a JRE”错误信息,应该是JAVA_HOME环境变量配置有问题。我发现,我的就是因为JAVA_HOME加了个分号“C:\Program Files\Java\jdk1.6.0_23;”,改为“C:\Program Files\Java\jdk1.6.0_23”就OK!

配置JAVA环境变量:

1.JAVA_HOME: 

一、为了方便引用,比如,你JDK安装在C:\Program Files\Java\jdk1.6.0目录里,则设置JAVA_HOME为该目录路径, 那么以后你要使用这个路径的时候, 只需输入%JAVA_HOME%即可, 避免每次引用都输入很长的路径串;

二、归一原则, 当你JDK路径*改变的时候, 你仅需更改JAVA_HOME的变量值即可, 否则,你就要更改任何用绝对路径引用JDK目录的文档, 要是万一你没有改全, 某个程序找不到JDK, 后果是可想而知的----系统崩溃; 

三、第三方软件会引用约定好的JAVA_HOME变量, 不然, 你将不能正常使用该软件, 以后用JAVA久了就会知道, 要是某个软件不能正常使用, 不妨想想是不是这个问题。

2.CLASSPATH: 

这个变量设置的目的是为了程序能找到相应的".class"文件。你编译一个JAVA程序---A.java, 会得到一个A.class的类文件,你在当前目录下执行java A, 将会得到相应的结果(前提是你已经设置CLASSPATH为".")。现在, 你把A.class移到别的目录下(例如:"e:\"), 执行java A, 将会有NoClassDefFindError的异常,原因就是找不到.class文件, 现在你把CLASSPATH增加为:".;e:\"再运行java A, 一切正常, java命令通过CLASSPATH找到了.class文件。

3.PATH: 

把 %JAVA_HOME%\bin添加到PATH路径下, 这样, 我们在任何路径下就可以仅用java来执行命令而不是使用%JAVA_HOME%\bin\java 来执行java命令。当你在命令提示符窗口输入你个代码时,操作系统会在当前目录和PATH变量目录里查找相应的应用程序, 并且执行。

 

本文出自 “quietboy's blog” 博客,请务必保留此出处http://quietboy.blog.51cto.com/6711298/1195008