从现有线程(What tomcat requires JDK or JRE?和Why does Tomcat require JDK installed?)我了解到Tomcat 5.5以后不需要安装JDK来编译jsp文件,因为它使用自己的捆绑Eclipse Java编译器。但是,当tomcat运行java字节代码时,它确实需要JRE。但是在安装Tomcat时,我们只需要指定JVM的位置。要编译和运行Java代码,我们只需要将JDK文件夹下的bin文件夹添加到路径环境中。但是JDK 9不再包含JRE文件夹了。而是在JDK文件夹之外有一个独立的JRE文件夹。在运行编译的jsp代码时,Tomcat如何仍然捕获JRE? Tomcat中的哪个配置文件捕获了这个?谢谢!
答案 0 :(得分:1)
但是在安装Tomcat时,我们只需要指定JVM的位置
指定JVM的位置会隐式指定JRE的位置,因为JVM位于JRE目录结构中。
要编译和运行Java代码,我们只需要将JDK文件夹下的bin文件夹添加到路径环境中。
将JDK bin
文件夹添加到PATH,意味着您可以运行java
和javac
命令。命令文件的位置隐式指定要使用的JDK的位置,从而指定JVM的位置。没有配置文件。
在Windows 64位Java 5到Java 8中,JVM位于%JAVA_HOME%\jre\bin\server\jvm.dll
。
在Windows 64位Java 9中,JVM位于%JAVA_HOME%\bin\server\jvm.dll
。
但是JDK 9不再包含JRE文件夹了。而是在JDK文件夹之外有一个独立的JRE文件夹。
所有Java版本的JDK安装程序都将创建JDK文件夹和JRE文件夹,除非您告诉它不要创建单独的JRE文件夹。在这方面,Java 9与旧Java版本没什么不同。
运行编译的jsp代码时,Tomcat如何仍然捕获JRE?
Tomcat本身是用Java编写的,因此Tomcat找不到Java。运行Tomcat的是Java。