我如何findTomcat6正在使用的Java版本?

有没有一个OS命令来findTomcat6正在使用的Java版本? 我需要使用Perl(包括system())命令。

我使用Linux。 Ubuntu和CentOS

有没有像?

tomcat6 version 

首先,您需要首先了解Tomcat是一个Java应用程序。 因此,要查看Tomcat正在使用哪个Java版本,只需简单地findTomcat启动的脚本文件,通常是catalina.sh。

在这个文件里面,你会得到如下的东西:

 catalina.sh:# JAVA_HOME Must point at your Java Development Kit installation. catalina.sh:# Defaults to JAVA_HOME if empty. catalina.sh: [ -n "$JAVA_HOME" ] && JAVA_HOME=`cygpath --unix "$JAVA_HOME"` catalina.sh: JAVA_HOME=`cygpath --absolute --windows "$JAVA_HOME"` catalina.sh: echo "Using JAVA_HOME: $JAVA_HOME" 

默认情况下,JAVA_HOME应该是空的,这意味着它将使用java的默认版本,或者可以使用以下命令进行testing:echo $ JAVA_HOME

然后使用“java -version”来查看你的默认java是哪个版本。

反之亦然,通过设置这个属性:JAVA_HOME,你可以configuration启动Tomcat时使用哪个Java版本。

/usr/local/tomcat6/bin/catalina.sh版本

一旦启动tomcat,只需在terminal提示符下运行以下命令:

ps -ef | grep tomcat

这将显示进程的详细信息,并指出哪个JVM(按文件夹位置)运行的是tomcat。

如果tomcat还没有启动,你可以使用命令\bin\cataline version来检查当你使用bin\startup启动tomcat时tomcat将使用哪个JVM

实际上, \bin\cataline version只是调用位于\lib\catalina.jarorg.apache.catalina.util.ServerInfo的主类。 org.apache.catalina.util.ServerInfo通过以下命令获取JVM版本和JVM供应商:

 System.out.println("JVM Version: " +System.getProperty("java.runtime.version")); System.out.println("JVM Vendor: " +System.getProperty("java.vm.vendor")); 

所以,如果tomcat正在运行,您可以创build一个调用org.apache.catalina.util.ServerInfo的JSP页面,或者只是调用上面的System.getProperty()来获取JVM版本和供应商。 将这个JSP部署到正在运行的tomcat实例并浏览到它以查看结果。

或者,您应该知道哪个端口是正在运行的tomcat实例使用。 因此,您可以使用OS命令来查找哪个进程正在侦听此端口。 例如,在窗口中,可以使用命令netstat -aon来查找正在侦听特定端口的进程的进程ID。 然后去窗口任务pipe理器检查此进程ID所属的完整文件path。 然后可以从该文件path确定Java版本。

或者你可以使用Probe应用程序,只要看看它的系统信息页面。 比编写代码容易得多,一旦你开始使用它,你永远不会回到Tomcatpipe理器。

您可以使用Tomcatpipe理器应用程序找出Tomcat正在使用的JRE和OS版本。 给定一个用户tomcat ,密码为password ,密码为manager

雄猫6:

 curl http://tomcat:password@localhost:8080/manager/serverinfo 

Tomcat 7/8:

 curl http://tomcat:password@localhost:8080/manager/text/serverinfo 

安装完tomcat之后,可以通过在“search程序和文件”中search来select“configurationtomcat”。 点击“configurationTomcat”后,你应该给pipe理员权限,窗口打开。 然后点击“java”选项卡。 在那里你可以看到JVM和JAVA类path。

对于Windows,启动cmd提示并路由到你有tomcat启动脚本的path(通常是bin)。

 C:\opt\isv\tomcat-7.0\grid\bin>version Using CATALINA_BASE: "C:\opt\isv\tomcat-7.0\grid" Using CATALINA_HOME: "C:\opt\isv\tomcat-7.0\grid" Using CATALINA_TMPDIR: "C:\opt\isv\tomcat-7.0\grid\temp" Using JRE_HOME: "C:\opt\isv\devtools\jdk1.8.0_45" Using CLASSPATH: "C:\opt\isv\tomcat-7.0\grid\bin\bootstrap.jar;C:\opt\isv\tomcat-7.0\grid\bin\tomcat-juli.jar" Server version: Apache Tomcat/7.0.55 Server built: Jul 18 2014 05:34:04 Server number: 7.0.55.0 OS Name: Windows 7 OS Version: 6.1 Architecture: x86 JVM Version: 1.8.0_45-b15 JVM Vendor: Oracle Corporation C:\opt\isv\tomcat-7.0\grid\bin>