一尘不染

在服务器上设置Tomcat 7:“ NB:JAVA_HOME应该指向JDK而不是JRE”…为什么?

tomcat

我正在尝试在服务器实例(Windows Server 2008 R2 Enterprise的新安装)上设置Tomcat 6。我想通过URL提供Java
EE服务。

它通过localhost服务器上的作品。我将.war文件放入我的文件中/webapps,在中运行startup.bat
/bin,然后localhost:80/myWebServce在浏览器中导航到并转到我的欢迎页面。

当我尝试通过运行service.bat(在/bin文件夹中)创建服务时,收到一条错误消息,内容为:

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

我的问题是:为什么?我认为JDK只是JRE
+一些开发工具(IDE,调试器等)。为什么tomcat需要JDK作为服务运行,而不是在localhost上运行?运行Web服务所需的JDK中有什么?


阅读 314

收藏
2020-06-16

共1个答案

一尘不染

Tomcat不需要JDK。Tomcat附带了Eclipse JDT编译器,Tomcat将其用作* .jsp-> * .java-> * .class进程的一部分,以将JSP转换为已编译的Servlet。

但是,如果指定JAVA_HOME,则Tomcat希望它指向完整的JDK安装。如果要使用JRE,则需要设置JRE_HOME而不是JAVA_HOME。

2020-06-16