文章标题

来源:互联网 发布:淘宝网怎么升级 编辑:程序博客网 时间:2024/06/08 18:09

所有tomcat实例运行时都报错:the catalina_home environment variable is not defined correctly
原因分析:添加Catalina_home环境变量E:\0wangshuai\JAVA\RunEnvironment\The Server\Tomcat\apache-tomcat-7.0.57
打开startup.bat脚本,找到
if exist “%CATALINA_HOME%\bin\catalina.bat” goto okHome
echo The CATALINA_HOME environment variable is not defined correctly
echo This environment variable is needed to run this program
goto end
问题解决:环境变量问题,设置classpath的环境变量,%JAVA_HOME%/lib/tools.jar;%JAVA_HOME%/lib/dt.jar;%CATALINA_HOME%/lib/servlet-api.jar

JDK 5 或者之后的,那就把 classpath 去掉,编译器会自动去寻找 tools.jar 的。
tools.jar 是系统用来编译一个类的时候用到的 也就是javac的时候用到。
javac XXX.java
实际上就是运行
javac -Calsspath=%JAVA_HOME%\lib\tools.jar xx.xxx.Main XXX.java
jdk5之前,java虚拟机即jvm想运行tools.jar中的某个class文件,但是这个class文件所在的jar包即tools.jar压根就没有被classloader加载到jvm虚拟机上,所以要通过classpath指定
一个classpath就是一个参数,来告诉java虚拟机在哪里可以找到类和包去运行一个程序。

任然存在的问题:修改classpath后只能保证startup.bat可以执行,但是tomcat7.exe和tomcat7w.exe任然不能运行。
可能原因:安装了多个jdk,且有32位和64位,环境变量配置错误,且eclipse不能启动

参考自http://www.cnblogs.com/draem0507/archive/2012/09/17/2688960.html