【背景】
从idea要启动Tomcat时,结果发现报错了,还带乱码的。。。
【问题】
后来从网上了解了一下Tomcat,发现它也是可以从cmd中启动的(前提是配置了Tomcat的环境变量,即catalina),然后得到了下面的错误信息。
【原因】
我们找到Tomcat的目录bin下的文件,里面有类型为“bat”的和“sh”的文件,bat是给Windows使用的,sh是给Linux使用的。
因为启动tomcat会调用tomcat安装文件中的startup.bat,而它调用了catalina.bat则调用了setclasspath.bat。错误信息就是从这个批处理脚本里打印出来的。
打开setclasspath.bat,发现它就是一段批处理命令,Tomcat的启动需要jdk的环境,所以有两种解决办法:
(1)配置java的环境变量
(2)在setclasspath.bat的开头手动声明环境变量
【配置java环境变量】
(1)系统变量→新建 JAVA_HOME 变量 。
变量值填写jdk的安装目录(本人是 D:\Java\jdk1.7.0)
(2)系统变量→寻找 Path 变量→编辑
在变量值最后输入 %JAVA_HOME%\bin;%JAVA_HOME%\jre\bin;
(3)系统变量→新建 CLASSPATH 变量
变量值填写 .;%JAVA_HOME%\lib;%JAVA_HOME%\lib\tools.jar(注意最前面有一点)
【启动】
在cmd输入startup。打开localhost:8080