我想让我的Tomcat JVM
版本为7.所以我按照这里的说明进行了操作:How to change Java version used by TOMCAT?并将我的JAVA_HOME
更改为我的jdk7目录。
要确保,这是命令:
$ echo $JAVA_HOME
/usr/lib/jvm/java-7-openjdk-amd64
我重新启动了Tomcat。我想验证并运行我从这里得到的命令:https://stackoverflow.com/a/10822328/998318
$ /usr/share/tomcat7/bin/catalina.sh version
/usr/share/tomcat7/bin/catalina.sh: 1: /usr/share/tomcat7/bin/setenv.sh: -Dcom.sun.management.jmxremote: not found
/usr/share/tomcat7/bin/catalina.sh: 2: /usr/share/tomcat7/bin/setenv.sh: -Dcom.sun.management.jmxremote.port=1099: not found
/usr/share/tomcat7/bin/catalina.sh: 3: /usr/share/tomcat7/bin/setenv.sh: -Dcom.sun.management.jmxremote.authenticate=false: not found
/usr/share/tomcat7/bin/catalina.sh: 4: /usr/share/tomcat7/bin/setenv.sh: -Dcom.sun.management.jmxremote.ssl=false: not found
Using CATALINA_BASE: /usr/share/tomcat7
Using CATALINA_HOME: /usr/share/tomcat7
Using CATALINA_TMPDIR: /usr/share/tomcat7/temp
Using JRE_HOME: /usr/lib/jvm/java-7-openjdk-amd64
Using CLASSPATH: /usr/share/tomcat7/bin/bootstrap.jar:/usr/share/tomcat7/bin/tomcat-juli.jar
Server version: Apache Tomcat/7.0.28
Server built: Apr 8 2014 08:47:08
Server number: 7.0.28.0
OS Name: Linux
OS Version: 3.16.0-0.bpo.4-amd64
Architecture: amd64
JVM Version: 1.7.0_79-b14
JVM Vendor: Oracle Corporation
确实我看到JVM版本是1.7.0_79-b14
发生了什么?事实上我开始了整个过程,因为我的战争由于版本不匹配而没有部署:
Caused by: java.lang.UnsupportedClassVersionError:
org/glassfish/jersey/servlet/init/JerseyServletContainerInitializer :
Unsupported major.minor version 51.0 (unable to load class
org.glassfish.jersey.servlet.init.JerseyServletContainerInitializer)
更新 根据要求,这是运行java -version的输出:
$ java -version
java version "1.7.0_79"
OpenJDK Runtime Environment (IcedTea 2.5.6) (7u79-2.5.6-1~deb7u1)
OpenJDK 64-Bit Server VM (build 24.79-b02, mixed mode)
答案 0 :(得分:4)
在*nix
上,使用以下内容创建setenv.sh文件:
JRE_HOME=/usr/java/jdk1.7.0_03/jre
CATALINA_PID="$CATALINA_BASE/tomcat.pid"
答案 1 :(得分:3)
根据this article,有4种不同的方式:
<强> 1。通过更新JAVA_HOME或JRE_HOME更改JRE
这种方法实现非常简单,但它仅适用于从zip分发版安装的Tomcat (与作为服务安装的Tomcat相比)。
如果只设置了JAVA_HOME
环境变量,Tomcat将作为JDK
变量指定的JAVA_HOME
的一部分在JRE下运行。因此,我们通过更新此变量来更改Tomcat的JRE
。
如果同时设置了JAVA_HOME
和JRE_HOME
环境变量,则首选JRE_HOME。以下是JRE_HOME
变量(Windows上的路径)的有效值示例:
JRE_HOME=C:\Program Files\Java\jre7
<强> 2。使用“setenv”脚本更改JRE
我们可以通过在名为setenv.bat(在Windows上)或setenv.sh(在
JRE_HOME
上)的脚本文件中设置*nix
变量来更改Tomcat的JRE。默认情况下,此文件不存在,因此请创建此类文件并将其放在CATALINA_BASE\bin
目录下(CATALINA_BASE
是Tomcat安装目录)。
在Windows上,使用以下内容创建setenv.bat
文件:
set "JRE_HOME=C:\Program Files\Java\jdk1.7.0_03\jre"
exit /b 0
第3。在Tomcat服务管理器中更改JRE
对于作为服务安装的Tomcat安装(在Windows上),我们可以通过在Tomcat服务管理器程序中配置Java虚拟机设置(例如Tomcat7w.exe
)来更改运行Tomcat的JRE版本,如下面的屏幕截图所示:
<强> 4。在Eclipse IDE中更改JRE
要在Eclipse中更改Tomcat运行时的JRE版本,请转到菜单Window&gt;喜好。在“首选项”对话框中,打开“服务器”&gt;在“运行时环境”节点中,在列表中选择一个Tomcat版本,然后单击“编辑”按钮
查看linked文章
中的更多信息