我试图得到Appfuse + Tomcat + jRebel工作。

默认情况下,Appfuse使用Cargo下载tomcat。7.0.33)并将应用程序部署到它。我希望使用一个已经安装的tomcat (ver。7.0.27),而不是下载的。我在appfuse FAQ中做了更改。

在使用mvn cargo:run部署后,我如何知道实际运行的tomcat确实是7.0.27?

我曾经键入一个错误的URL(例如:localhost:8080/dfsfsdf),在错误页面中看到它,但现在它什么也没有显示。

我的$CATALINA_HOME指向我自己的tomcat 7.0.27。 抱歉忘了说,这是Windows的。

更新:

既然这个问题在某种程度上变得很流行,我想解释一下为什么这个答案被接受。很简单,这是第一个解决我问题的方法。

我正在看问题的标题,@Tech Junkie和@CPU 100确实有最好的答案,但不是我遇到的情况。(我想知道mvn cargo:run是否运行我安装的tomcat或“项目嵌入”tomcat):)


当前回答

我知道现在说这个可能太迟了,但这个可能很有用: 如果您试图从Java代码中了解Apache Tomcat服务器版本,您可以使用:

从HttpServlet:

protected void doGet(HttpServletRequest request, HttpServletResponse response) {
    getServletContext().getServerInfo()
}

从一个ServletContextListener:

public void contextInitialized(ServletContextEvent event)  { 
    event.getServletContext().getServerInfo();      
}

其他回答

有时tomcat目录下的bin/version.sh脚本仍然没有显示数字版本。例如,它可以只显示:“服务器版本:WebServer”。其他提到的机会(检查路径、检查日志、发布说明、tomcat根页面输出)也不能工作。 在这种情况下(你应该仍然有对tomcat目录的读访问权):

从tomcat的lib目录中获取catalina.jar。 提取它 查看一下org/apache/catalina/util/ServerInfo.properties

它可以包含您所期望的内容(server.info和server.info)。数量字段)

检查yout tomcat日志目录。

goto  /var/log/tomcat8/

查看文件:catalina.out 它将显示tomcat版本如下:

Server version name: Apache Tomcat/8.5.72 04-Feb-2022 04:00:58.537 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Server built: Oct 28 2021 00:54:01 UTC 04-Feb-2022 04:00:58.537 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Server version number: 8.5.72.0 04-Feb-2022 04:00:58.537 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log OS Name: Linux 04-Feb-2022 04:00:58.537 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Architecture: amd64 04-Feb-2022 04:00:58.537 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log JVM Version: 1.8.0_312-b07

尝试解析或执行Tomcat_home/bin目录,并寻找 一个名为version.sh或version.bat的脚本,具体取决于您的 操作系统。 执行脚本。/version.sh或version.bat

如果没有version.bat或version.sh,则 使用一个工具解压JAR文件(\tomcat\server\lib\catalina. JAR),并查看文件org\apache\catalina\util\lib\ServerInfo.properties。 "server.info="下定义的版本。

在Linux下检查tomcat版本

cd /opt/tomcat/bin

./catalina.sh version
For windows machine 
Go to the tomcat directory C:\apache-tomcat-x.0.xx\bin
    bin>version.bat
    Using CATALINA_BASE:   "C:\apache-tomcat-x.0.xx"
    Using CATALINA_HOME:   "C:\apache-tomcat-x.0.xx"
    Using CATALINA_TMPDIR: "C:\apache-tomcat-x.0.xx\temp"
    Using JRE_HOME:        "C:\Program Files\Java\jdk1.8.0_65"
    Using CLASSPATH:       "C:\apache-tomcat-x.0.xx\bin\bootstrap.jar;C:\apache-tomcat-x.0.xx\bin\tomcat-juli.jar"
    Server version: Apache Tomcat/7.0.53





For Linux Machine 
Go to the tomcat directory /usr/mack/apache-tomcat-x.0.xx/bin
    # ./version.sh
    Using CATALINA_BASE:   /usr/mack/apache-tomcat-x.0.xx
    Using CATALINA_HOME:   /usr/mack/apache-tomcat-x.0.xx
    Using CATALINA_TMPDIR: /usr/mack/apache-tomcat-x.0.xx/temp
    Using JRE_HOME:        /usr/java/jdk1.7.0_71/jre
    Using CLASSPATH:       /usr/mack/apache-tomcat-x.0.xx/bin/bootstrap.jar:/usr/mack/apache-tomcat-x.0.xx/bin/tomcat-juli.jar
    Server version: Apache Tomcat/7.0.56

如果Tomcat作为服务安装:

#sudo /etc/init.d/tomcat version