Neither the JAVA_HOME nor the JRE_HOME environment variable is defined

妖狐艹你老母 2022-03-15 06:10 274阅读 0赞

【背景】

从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(注意最前面有一点)
在这里插入图片描述

在setclasspath.bat的开头手动声明环境变量

【启动】

在cmd输入startup。打开localhost:8080
在这里插入图片描述

发表评论

表情:
评论列表 (有 0 条评论,274人围观)

还没有评论,来说两句吧...

相关阅读