wake-up-neo.com

so erfahren Sie, wie Sie die Tomcat-Version ausführen

Ich versuche Appfuse + Tomcat + jRebel zum Laufen zu bringen.

Appfuse verwendet Cargo standardmäßig zum Herunterladen von Tomcat (Version 7.0.33) und zum Bereitstellen der Anwendung. Ich möchte anstelle des heruntergeladenen Tomcat einen bereits installierten Tomcat (Version 7.0.27) verwenden. Ich habe die Änderung im Anschluss an die appfuse FAQ vorgenommen.

Wie kann ich nach der Bereitstellung mit mvn cargo:run wissen, dass der tatsächlich ausgeführte Tomcat tatsächlich 7.0.27 ist? 

Ich habe früher eine falsche URL eingegeben (z. B. localhost: 8080/dfsfsdf), um sie auf der Fehlerseite anzuzeigen. Jetzt wird jedoch nichts angezeigt.

Mein $CATALINA_HOME zeigt auf mein eigenes Tomcat 7.0.27 ..., das leider vergessen ist zu erwähnen, es ist für Windows

Aktualisieren:

Da diese Frage irgendwie populär geworden ist, möchte ich erklären, warum diese Antwort akzeptiert wurde. Einfach, es war der erste, der mein Problem gelöst hat. 

nach dem Titel der Frage haben @Tech Junkie und @CPU 100 wirklich die beste Antwort, aber nicht für das Szenario, dem ich begegnet bin. (Ich wollte wissen, ob mvn cargo:run mein installiertes Tomcat ausführt oder ein "Projekt eingebettetes" Tomcat ist) :)

145
Yichaoz

wenn Sie eine JSP-Datei hochladen können, können Sie einige Informationen wie in diesem Beispiel ausdrucken: bestdesigns.co.in/blog/check-jsp-Tomcat-version

Speichern Sie diesen Code in einer Datei namens Tomcat_version.jsp:

    Tomcat Version : <%= application.getServerInfo() %><br>    
    Servlet Specification Version : 
<%= application.getMajorVersion() %>.<%= application.getMinorVersion() %> <br>    
    JSP version :
<%=JspFactory.getDefaultFactory().getEngineInfo().getSpecificationVersion() %><br>

Wenn Sie auf http://example.com/Tomcat_version.jsp zugreifen, sollte die Ausgabe ähnlich aussehen:

Tomcat Version : Apache Tomcat/5.5.25
Servlet Specification Version : 2.4
JSP version: 2.0
47
wemu

Obwohl dies nicht neu ist, dachte ich, kann meine Antwort anderen helfen:

cd Tomcat/lib 
Java -cp catalina.jar org.Apache.catalina.util.ServerInfo

und das ist es.

Server version: Apache Tomcat/7.0.30
Server built:   May 23 2013 02:54:10
Server number:  7.0.30.0
OS Name:        Linux
OS Version:     3.13.0-36-generic
Architecture:   AMD64
JVM Version:    1.7.0_65-b32
JVM Vendor:     Oracle Corporation
416
Tech Junkie
  1. Versuchen Sie, das Tomcat_home/bin-Verzeichnis zu analysieren oder auszuführen, und suchen Sie nach Einem Skript namens version.sh oder version.bat , je nach Ihrem Betriebssystem.
  2. Führen Sie das Skript ./version.sh oder version.bat aus.

Wenn keine version.bat oder version.sh vorhanden ist, verwenden Sie ein Tool zum Entpacken von JAR-Dateien (\ Tomcat\server\lib\catalina.jar) und suchen in der Datei org\Apache\catalina\util\lib\ServerInfo .properties . die unter "server.info =" definierte Version.

88
grepit

führen Sie das Skript in Ihrem Tomcat/bin-Verzeichnis aus:

sh Tomcat/bin/version.sh

Server version: Apache Tomcat/7.0.42
Server built:   Jul 2 2013 08:57:41
Server number:  7.0.42.0
OS Name:        Linux
OS Version:     2.6.32-042stab084.26
Architecture:   AMD64
JVM Version:    1.7.0_21-b11
JVM Vendor:     Oracle Corporation
44
tokhi

Sie können http://localhost:8080/ einfach in Ihrem Webbrowser öffnen.

Apache Tomcat/7.0.42
  • Ich gehe davon aus, dass Ihr Tomcat auf Port 8080 läuft
38

Die aktuell ausgeführte Version von Tomcat

Wenn Sie die Umgebungsvariable -% CATALINA_HOME% festlegen, dannWindows:

>> cd %CATALINA_HOME%\bin
>> version

Alternative, 

Java.exe -cp lib\catalina.jar org.Apache.catalina.util.ServerInfo

MEINE EINSTELLUNG --- Hoffe, dass Ihre wie folgt aussehen wird

%CATALINA_HOME% --- C:\Program Files\Tomcat\Apache-Tomcat-8.0.28

AUSGABE

Serverversion: Apache Tomcat/8.0.28 Server erstellt: 7. Oktober 2015 um 18:25:21 UTC Servernummer: 8.0.28.0 Betriebssystemname: Windows 7 Betriebssystemversion: 6.1 Architektur: AMD64 JVM-Version: 1.8.0_111-b14 JVM-Hersteller: Oracle Corporation

11
Yergalem

Um die Tomcat-Version herauszufinden, finden Sie diese Datei - version.sh für * nix oder version.bat für Windows. Diese version.sh-Datei befindet sich normalerweise im Bin-Ordner von Tomcat.

[email protected]:/usr/share/Tomcat7/bin$ ./version.sh 

Hinweis

Wenn Sie nicht sicher sind, wo sich die version.sh-Datei befindet, führen Sie den folgenden Befehl aus:

Sudo find / -name "version.sh"

Erfahren Sie alles über Tomcat7.

Sudo find / -name "Tomcat7"
9
Nanhe Kumar

Verwenden der Versionshinweise

Im Hauptordner von Tomcat finden Sie die Datei RELEASE-NOTES , die folgende Zeilen enthält (~ Zeile 20-21):

                Apache Tomcat Version 8.0.22
                        Release Notes

Oder Sie können die gleichen Informationen über Befehlszeile erhalten:

  • Windows :

    type RELEASE-NOTES | find "Apache Tomcat Version"
    

    Ausgabe:

                 Apache Tomcat Version 8.0.22
    
  • Linux :

    cat RELEASE-NOTES | grep "Apache Tomcat Version"
    

    Ausgabe:

                 Apache Tomcat Version 8.0.22
    
9

führe folgendes aus

/usr/local/Tomcat/bin/catalina.sh version

ihre Antwort wird so sein:

Using CATALINA_BASE:   /usr/local/Tomcat
Using CATALINA_HOME:   /usr/local/Tomcat
Using CATALINA_TMPDIR: /var/tmp/
Using JRE_HOME:        /usr
Using CLASSPATH:       /usr/local/Tomcat/bin/bootstrap.jar:/usr/local/Tomcat/bin/Tomcat-juli.jar
Using CATALINA_PID:    /var/catalina.pid
Server version: Apache Tomcat/7.0.30
Server built:   Sep 27 2012 05:13:37
Server number:  7.0.30.0
OS Name:        Linux
OS Version:     2.6.32-504.3.3.el6.x86_64
Architecture:   AMD64
JVM Version:    1.7.0_60-b19
JVM Vendor:     Oracle Corporation
6
tcat

Für Windows-Maschine 

bin>version.bat
Using CATALINA_BASE:   "C:\Apache-Tomcat-7.0.53"
Using CATALINA_HOME:   "C:\Apache-Tomcat-7.0.53"
Using CATALINA_TMPDIR: "C:\Apache-Tomcat-7.0.53\temp"
Using JRE_HOME:        "C:\Program Files\Java\jdk1.8.0_65"
Using CLASSPATH:       "C:\Apache-Tomcat-7.0.53\bin\bootstrap.jar;C:\Apache-Tomcat-7.0.53\bin\Tomcat-juli.jar"
Server version: Apache Tomcat/7.0.53
Server built:   Jan 01 2014 06:20:16
Server number:  7.0.53.0
OS Name:        Windows 10
OS Version:     10.0
Architecture:   AMD64
JVM Version:    1.8.0_65-b17
JVM Vendor:     Oracle Corporation

Für Linux-Rechner 

# ./version.sh
Using CATALINA_BASE:   /usr/epramaan/Apache-Tomcat-7.0.56
Using CATALINA_HOME:   /usr/epramaan/Apache-Tomcat-7.0.56
Using CATALINA_TMPDIR: /usr/epramaan/Apache-Tomcat-7.0.56/temp
Using JRE_HOME:        /usr/Java/jdk1.7.0_71/jre
Using CLASSPATH:       /usr/epramaan/Apache-Tomcat-7.0.56/bin/bootstrap.jar:/usr/epramaan/Apache-Tomcat-7.0.56/bin/Tomcat-juli.jar
Server version: Apache Tomcat/7.0.56
Server built:   Sep 26 2014 12:08:24
Server number:  7.0.56.0
OS Name:        Linux
OS Version:     2.6.32-431.el6.x86_64
Architecture:   AMD64
JVM Version:    1.7.0_71-b14
JVM Vendor:     Oracle Corporation

Wenn Tomcat als Dienst installiert ist:

#Sudo /etc/init.d/Tomcat version
5
Mack

Eine weitere Option ist die Anzeige der Versionshinweise von Tomcat, die für Linux/Window gelten

{Tomcat_home}/webapps/ROOT/RELEASE-NOTES.txt

Wenn Tomcat als Dienst installiert ist, versuchen Sie Folgendes:

Sudo /etc/init.d/Tomcat version

Tauschen Sie "Tomcat" gegen den tatsächlichen Namen des Dienstes aus.

3

Ich weiß, es ist vielleicht zu spät dafür, aber dies könnte nützlich sein: Wenn Sie versuchen, die Apache Tomcat Server-Version aus Java-Code zu kennen, können Sie Folgendes verwenden:

von einem HttpServlet:

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

von einem ServletContextListener:

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

Geben Sie 404.jsp oder non-existent.jsp ein.

Rufen Sie die Tomcat/JBoss-Versionsnummer unten auf der Seite auf.

1
Ivan Chau

Öffnen Sie Ihre Tomcat-Homepage (normalerweise localhost:8080)

Sie werden so etwas sehen:

 enter image description here

1
Eduardo

Um Tomcat vor Hackern zu schützen, wird empfohlen, die Tomcat-Versionsinformationen mit ein paar Schritten auszublenden. Das OWASP-Projekt schlägt einige Schritte vor. https://www.owasp.org/index.php/Securing_Tomcat . Wenn eine Tomcat-Installation auf diese Weise geschützt ist, wird nur eine der obigen Antworten die Version von Tomcat anzeigen. 
gehen Sie also die Datei $ Tomcat_HOME\RELEASE-NOTES durch, in der die Versionsnummer eindeutig bekannt gegeben wird.

Ich hatte einen solchen geschützten Server und nur die RELEASE-NOTES-Datei enthüllte die Version des Tomcat. Bei allen anderen Techniken wurde die Versionsinformation nicht angezeigt.

1
anjanb

In Linux, um die Tomcat-Version zu überprüfen

cd /opt/Tomcat/bin

./catalina.sh version
1
Narendra Kumar

Mit diesem einen Befehl können Sie fast alles überprüfen:

Java -cp Tomcat/lib/catalina.jar org.Apache.catalina.util.ServerInfo

Und die Ausgabe sieht so aus

Server version: Apache Tomcat/8.5.24
Server built:   Nov 27 2017 13:05:30 UTC
Server number:  8.5.24.0
OS Name:        Linux
OS Version:     4.4.0-137-generic
Architecture:   AMD64
JVM Version:    1.8.0_131-b11
JVM Vendor:     Oracle Corporation
1

Wir arbeiten in einer Windows-Umgebung und ich musste einen Weg finden, die Tomcat-Version außerhalb der Java-Umgebung zu bekommen. Ohne die Version zu kennen, konnte ich die Verzeichnisse nicht ermitteln. Ich fand schließlich den besten Weg, um den Tomcat-Dienst abzufragen:

C:\temp> sc Abfrage | finde/ich "Kater"
SERVICE_NAME: Tomcat6
DISPLAY_NAME: Apache Tomcat 6.0 Tomcat6

1
kenbrown_ct

auf dem Terminal des Unix-Servers ausführen

w3m http://localhost:8080/

zum Beenden drücken Sie q und dann y

Starten Sie einfach Tomcat und suchen Sie in catalina.logs nach " Serverversionsname ". Sie erhalten dann die Version Ihres Tomcat. Zum Beispiel:

"07. März 2019 11:25:40 org.Apache.catalina.startup.VersionLoggerListener log INFO: Name der Serverversion: Apache Tomcat / 9.0.16 "

0
Shubh

In Unix-ähnlichen Umgebungen empfehle ich auch, die aktuelle Befehlszeile des laufenden Prozesses zu überprüfen:

$ ps aux | grep Java

...
/usr/lib/jvm/Java-8-openjdk-AMD64/bin/Java -Djava.util.logging.config.file=/srv/Tomcat-instances/bla/conf/logging.properties -Djava.util.logging.manager=org.Apache.juli.ClassLoaderLogManager -Djava.awt.headless=true -Xmx4096M -XX:+UseConcMarkSweepGC -Djdk.tls.ephemeralDHKeySize=2048 -Djava.protocol.handler.pkgs=org.Apache.catalina.webresources -agentlib:jdwp=transport=dt_socket,address=8000,server=y,suspend=n -Xmx4096m -Xms4096m -XX:MaxPermSize=2048m -Dcom.Sun.management.jmxremote -Dcom.Sun.management.jmxremote.authenticate=false -Dcom.Sun.management.jmxremote.ssl=false -Dcom.Sun.management.jmxremote.port=8090 -Dcom.Sun.management.jmxremote.rmi.port=8090 -Djava.rmi.server.hostname=localhost -Djava.endorsed.dirs=/opt/Apache-Tomcat-8.0.47/endorsed -classpath /opt/Apache-Tomcat-8.0.47/bin/bootstrap.jar:/opt/Apache-Tomcat-8.0.47/bin/Tomcat-juli.jar -Dcatalina.base=/srv/Tomcat-instances/bla -Dcatalina.home=/opt/Apache-Tomcat-8.0.47 -Djava.io.tmpdir=/tmp/Tomcat8-bla-tmp org.Apache.catalina.startup.Bootstrap start
...

Aufgrund von (Betriebssystem) Umgebungsvariablen und (Java) Systemeigenschaften, die auf unerwartete Werte gesetzt sind, kann ein subtiles Verhalten ausgeführt werden. Ich hatte eine Situation, in der A Tomcat 8 aufgrund eines veralteten Tomcat setenv.sh mit Klassen aus einem Tomcat 7 im Klassenpfad begann. Stellen Sie sicher, dass in der Befehlszeile Befehlszeilenoptionen wie -Dcatalina.base, -Dcatalina.home und -classpath sinnvoll sind.

0
Abdull

Windows-Task-Manager> Prozesse> Tomcat suchen> Rechtsklick> Dateispeicherort öffnen> Wenn Sie Tomcat7w.exe ausführen, wird dies in der Beschreibung angezeigt.

Tomcat sollte ausgeführt werden, um unter Prozesse sichtbar zu sein, wenn dies nicht unter Windows Vista/7 erfolgt. Gehen Sie zu Task-Manager> Registerkarte (Dienste).

0
madlymad

Sie finden die Serverinformationen auf der Statusseite:

{running-Tomcat-url}/manager/status

Auf dieser Seite können Sie die Java-Version sehen, auf der Ihr Tomcat ausgeführt wird

Hinweis: Ich habe diese Antwort auch in das Kompatibilitätsproblem von Tomcat6 und JRE7 eingefügt. Nicht unterstützte Major-Minor-Version 51.0

0
Carlo Ledesma