是否有OS命令来查找Tomcat6正在使用的Java版本? 我需要使用Perl(包括system())命令。我如何找到Tomcat6正在使用的Java版本?
我使用Linux。 Ubuntu和CentOS
有没有类似的东西?
tomcat6 version
是否有OS命令来查找Tomcat6正在使用的Java版本? 我需要使用Perl(包括system())命令。我如何找到Tomcat6正在使用的Java版本?
我使用Linux。 Ubuntu和CentOS
有没有类似的东西?
tomcat6 version
首先,您首先需要了解Tomcat是一个Java应用程序。 因此,要查看Tomcat正在使用哪个Java版本,只需简单地找到启动Tomcat的脚本文件,通常为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的默认版本,或者你可以测试:回声$ JAVA_HOME
然后使用“java -version”来查看你默认java是哪个版本。
反之亦然,通过设置此属性:JAVA_HOME,可以配置启动Tomcat时要使用哪个Java版本。
如果用tomcat没有启动呢,你可以使用命令\bin\cataline version
检查,当您使用bin\startup
事实上,\bin\cataline version
只需调用主类的org.apache.catalina.util.ServerInfo
启动tomcat JVM将tomcat的使用,它位于\lib\catalina.jar
的内部。该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正在运行,你可以创建调用org.apache.catalina.util.ServerInfo
或者只是简单地调用上述System.getProperty()
得到JVM版本JSP页面和供应商。将这个JSP部署到正在运行的tomcat实例并浏览到它以查看结果。
或者,您应该知道哪个端口是正在运行的tomcat实例使用。因此,您可以使用OS命令来查找哪个进程在侦听此端口。例如,在窗口中,您可以使用命令netstat -aon
找出正在侦听特定端口的进程的进程ID。然后转到窗口任务管理器到check the full file path of this process ID belongs to.。然后可以从该文件路径确定Java版本。
/usr/local/tomcat6/bin/catalina.sh版本
+1。这应该被选为**正确的答案** – 2013-09-05 10:16:18
+1这也打印JRE_HOME。 – 2014-04-29 07:38:15
这将打印JRE_HOME。但是,如果我执行'echo $ JRE_HOME',它不会打印任何内容。那么tomcat从何处获取JRE_HOME? – mahacoder 2016-03-17 06:09:44
一旦启动tomcat的只是在终端提示符运行以下命令:
ps -ef | grep tomcat
这将显示进程的详细信息并指出哪个JVM(按文件夹位置)运行的是tomcat。
k如何从中找到tomcat版本? – 2013-02-20 13:42:12
非常有用和准确的方式来找到它。谢谢 – 2015-05-24 04:43:05
这是准确的,ps -ef | grep tomcat,在输出中显示运行时java的路径。使用该java路径,调用/ xx/yy/java -version。与tomcat启动版本相比,catalina.sh版本可以显示不同的jre_version。 – signonsridhar 2015-08-21 05:38:42
安装tomcat后,可以通过在“搜索程序和文件”中搜索来选择“配置tomcat”。点击“配置Tomcat”后,您应该给予管理员权限并打开窗口。然后点击“java”选项卡。在那里你可以看到JVM和JAVA类路径。
这不解决用户的问题,它似乎是面向Windows系统。 – bitoiu 2014-04-02 16:30:39
您可以使用Tomcat管理器应用程序找出Tomcat正在使用的JRE和OS版本。鉴于用户tomcat
与密码password
与manager
作用:
的Tomcat 6:
curl http://tomcat:[email protected]:8080/manager/serverinfo
Tomcat的7/8:
curl http://tomcat:[email protected]:8080/manager/text/serverinfo
对于Windows,启动命令提示符和路由路径(通常是bin),你有你的tomcat启动脚本。
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>
他明确表示他正在使用的操作系统是:Linux。 Ubuntu和CentOS。你的答案与他们没有关系。 – 2017-08-09 15:26:48
您是否想从Tomcat内部(即servlet或JSP或实用程序类)或从外部找到它? – 2011-05-11 00:15:02
@PaŭloEbermann看到我的新编辑。 – bitbucket 2011-05-13 23:59:34
我想知道在WINDOWS中如何做到这一点 – Dennis 2013-10-22 02:20:46