更改tomcat6使用的JRE/JDK

更改tomcat6使用的JRE/JDK

需要更改我的tomcat6服务器使用的JRE,因为我有一个 JSP 应用程序,它编译了包含的类JDK 1.8.0_45

然后,自从我有了JRE 1.8.0_40(并且被 tomcat 使用),我的 JSP 应用程序在运行时出现了错误:

The type java.util.Map$Entry cannot be resolved. It is indirectly referenced from required .class files

所以我已经安装了JRE 1.8.0_45,只需下载它,然后解压并移动到:

/usr/lib/jvm/jre1.8.0_45/

然后更新以使用它(正如您在这里看到的,抱歉,因为它是西班牙语):

更新替代方案

所以我只是重新启动计算机,然后查找哪个JRE正在使用tomcat...但发现了类似的东西(抱歉,如果这不是查看它的最佳方法,这是我认为更简单的方法):

ps -aux | grep tomcat

Tomcat6执行

正如你所看到的,grep 输出中的第一行是 tomcat 的执行(不是吗?)但它似乎使用 JDK 而不是 JRE。另外,它正在使用,而我在构建我的应用程序时在同一台电脑上JDK1.8.0_40使用:JDK1.8.0_45

我用过的JDK

如果我们检查JDK选项,所选的选项没有指定版本,所以我不知道是否有问题:

替代品 JDK

所以这是我的问题,我只是想知道如何将tomcat使用的JDK/JRE版本更改为u45

我需要解决所有这些烂摊子。

答案1

您可以通过设置JAVA_HOME变量来解决此问题/etc/default/tomcat6(我假设基本操作系统仍然具有 Debian/Ubuntu Tomcat 软件包)。

Map$Entry不过,您得到的错误相当令人惊讶,我不希望在 JDK 1.8.0_40 和 1.8.0_45 之间切换时出现错误。

相关内容