【问题标题】:IN WINDOWS, How do I find what Java version Tomcat is using?在 WINDOWS 中,如何找到 Tomcat 使用的 Java 版本?
【发布时间】:2013-10-22 02:25:27
【问题描述】:

标题说明了一切。我搜索了网络和这里,没有什么是简单、清晰或明显的,除了可能制作一个包含以下内容的 JSP 页面:

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

我确实看到过关于 Linux 的 this SOF question,但我已经知道了。

【问题讨论】:

  • 在你的 startup.sh 和 catalina.sh 中启用 echo ON 以了解所有参数信息

标签: java windows tomcat version


【解决方案1】:

您可以在 JSP 中尝试下一个:

<!DOCTYPE html>
<%@page contentType="text/html" pageEncoding="UTF-8"%>
<html>
    <head>
        <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
        <title>Tomcat Version</title>
    </head>
    <body>
        <h2>Tomcat Version</h2>
        <pre><%=pageContext.getServletContext().getServerInfo()%></pre>
        <h2>Servlet Version</h2>
        <pre><%=pageContext.getServletContext().getMajorVersion()%>.<%=pageContext.getServletContext().getMinorVersion()%></pre>
    </body>
</html>

抱歉,不再推荐使用 scriptlet。 JSTL 更好:

<!DOCTYPE html>
<%@page contentType="text/html" pageEncoding="UTF-8"%>
<%@taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>
<html>
    <head>
        <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
        <title>Tomcat Version</title>
    </head>
    <body>
        <h2>Tomcat Version</h2>
        <pre>${pageContext.servletContext.serverInfo}</pre>
        <h2>Servlet Version</h2>
        <pre>${pageContext.servletContext.majorVersion}.${pageContext.servletContext.minorVersion}</pre>
    </body>
</html>

【讨论】:

  • 加一个用于 JSTL 和 JSP(?) 版本。
【解决方案2】:

您可以通过 catalina.bat 文件了解 Java 版本,该文件位于 bin 目录中。您还可以通过设置“JAVA_HOME”指向您的 Java 开发工具包安装,在此文件中设置您首选的 JDK。您可以通过@echo ON 获取有关环境的更多信息。这一般用于调试和检查 ENV 参数。默认情况下,tomcat 会选择默认的 Java 版本。 echo $JAVA_HOMEjava -version 了解更多详情

【讨论】:

  • tomcat 先尝试其他 java 版本,然后选择默认的 java。 'echo'ing $JAVA_HOME 不反映链接 '/usr/lib/jvm/java-default' 中的 java 版本,只是 /etc/bash.bashrc 和 /etc/profile 修改的 /etc/environment 中的内容后跟 ~/.bashrc 或 ~/.profile。在启动任何服务的过程中使用 JAVA 时,似乎只有 /etc/environment 有任何影响。 YMMV,但这就是我在 Ubuntu 12.04 上找到的原因
【解决方案3】:

您可以从ServletContext 获取您的服务器信息。查看此示例;

<%= application.getServerInfo() %>

那么请查看此oracle 文档。

【讨论】:

    猜你喜欢
    • 2019-03-23
    • 2011-08-22
    • 2013-02-02
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-08-31
    相关资源
    最近更新 更多