web-dev-qa-db-fra.com

comment savoir utiliser la version de Tomcat

J'essaie de faire fonctionner Appfuse + Tomcat + jRebel.

Appfuse utilise par défaut Cargo pour télécharger Tomcat (version 7.0.33) et y déployer l'application. Je souhaite utiliser un Tomcat déjà installé (version 7.0.27) au lieu de celui téléchargé. J'ai effectué la modification après le appfuse FAQ .

Après avoir déployé avec mvn cargo:run, comment puis-je savoir que Tomcat en cours d'exécution est bien 7.0.27? 

J'avais l'habitude de taper une mauvaise URL (ex. Localhost: 8080/dfsfsdf) pour la voir dans la page d'erreur, mais maintenant, elle ne montre rien.

Mon $CATALINA_HOME pointe vers mon propre Tomcat 7.0.27 . Désolé j'ai oublié de mentionner, c'est pour Windows

Mettre à jour:

Depuis que cette question est devenue en quelque sorte populaire, je voudrais expliquer pourquoi cette réponse acceptée. simple, c’est le premier qui a résolu mon problème. 

en regardant le titre de la question, @Tech Junkie et @CPU 100 ont vraiment la meilleure réponse, mais pas pour le scénario que j'ai rencontré. (Je voulais savoir si mvn cargo:run exécute mon Tomcat installé ou un Tomcat "intégré au projet") :)

145
Yichaoz

si vous pouvez télécharger un fichier JSP, vous pouvez imprimer des informations comme dans cet exemple: bestdesigns.co.in/blog/check-jsp-Tomcat-version

Enregistrez ce code dans un fichier nommé Tomcat_version.jsp:

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

Lorsque vous accédez à http://example.com/Tomcat_version.jsp , le résultat devrait ressembler à ceci:

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

Bien que cela ne soit pas récent, je pensais que ma réponse pouvait toujours aider les autres:

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

et c'est tout.

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. Essayez d’analyser ou d’exécuter le répertoire Tomcat_home/bin et recherchez Un script nommé version.sh ou version.bat en fonction de votre système d’exploitation
  2. Exécuter le script ./version.sh ou version.bat

S'il n'existe pas de version.bat ou version.sh, utilisez un outil pour décompresser les fichiers JAR (\ Tomcat\server\lib\catalina.jar) et recherchez-le dans le fichier org\Apache\catalina\util\lib\ServerInfo. .properties . la version définie sous "server.info =".

88
grepit

exécutez le script dans votre répertoire Tomcat/bin:

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

Vous pouvez simplement ouvrir http://localhost:8080/ dans votre navigateur Web Cela ouvrira la page d’accueil de Tomcat qui montre comment exécuter la version de Tomcat comme ceci:

Apache Tomcat/7.0.42
  • Je suppose que votre Tomcat fonctionne sur le port 8080
38

La version de Tomcat en cours d'exécution

Si vous définissez la variable d'environnement -% CATALINA_HOME%, alorsWindows:

>> cd %CATALINA_HOME%\bin
>> version

Alternativement 

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

MY SETTING --- J'espère que le vôtre ressemblera à ce qui suit

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

SORTIE

Version du serveur: Apache Tomcat/8.0.28 Version du serveur: 7 octobre 2015 18:25:21 UTC Numéro du serveur: 8.0.28.0 Nom du système d'exploitation: Windows 7 Version du système d'exploitation: 6.1 Architecture: AMD64 Version JVM: 1.8.0_111-b14 Fournisseur JVM: Oracle Corporation

11
Yergalem

Pour connaître la version de Tomcat, recherchez ce fichier - version.sh pour * nix ou version.bat pour Windows. Ce fichier version.sh se trouve normalement dans le dossier bin Tomcat.

phpmongodb@kumar:/usr/share/Tomcat7/bin$ ./version.sh 

Remarque

Si vous ne savez pas où est le fichier version.sh, essayez cette commande:

Sudo find / -name "version.sh"

Découvrez tout sur Tomcat7.

Sudo find / -name "Tomcat7"
9
Nanhe Kumar

Utiliser les notes de version

Dans le dossier principal de Tomcat, vous trouverez le fichier RELEASE-NOTES qui contient les lignes suivantes (~ ligne 20-21):

                Apache Tomcat Version 8.0.22
                        Release Notes

Ou vous pouvez obtenir les mêmes informations en utilisant ligne de commande :

  • Les fenêtres :

    type RELEASE-NOTES | find "Apache Tomcat Version"
    

    Sortie:

                 Apache Tomcat Version 8.0.22
    
  • Linux :

    cat RELEASE-NOTES | grep "Apache Tomcat Version"
    

    Sortie:

                 Apache Tomcat Version 8.0.22
    
9
ROMANIA_engineer

lancer le suivant

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

sa réponse sera quelque chose comme:

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

Pour la machine Windows 

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

Pour machine Linux 

# ./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

Si Tomcat est installé en tant que service:

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

Une autre option est de consulter les notes de publication de Tomcat, applicables à linux/window.

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

Si Tomcat est installé en tant que service, essayez:

Sudo /etc/init.d/Tomcat version

Echangez "Tomcat" avec le nom actuel du service.

3
Christopher Yang

Je sais qu'il est peut-être trop tard pour cela, mais cela pourrait être utile: Si vous essayez de connaître la version d'Apache Tomcat Server à partir du code Java, vous pouvez utiliser:

à partir d'un HttpServlet:

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

à partir d'un ServletContextListener:

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

Entrez 404.jsp ou non-existent.jsp.

Obtenez le numéro de version de Tomcat/JBoss au bas de la page.

1
Ivan Chau

Ouvrez votre page d'accueil Tomcat (généralement localhost:8080).

Vous verrez quelque chose comme ça:

 enter image description here

1
Eduardo

Pour protéger Tomcat contre les pirates, il est recommandé d’essayer quelques étapes pour masquer les informations de version de Tomcat. Le projet OWASP suggère quelques étapes. https://www.owasp.org/index.php/Securing_Tomcat . Si une installation Tomcat est ainsi protégée, seule l'une des réponses ci-dessus indiquera la version de Tomcat. 
je passe par le fichier $ Tomcat_HOME\RELEASE-NOTES où le numéro de version est clairement annoncé.

J'avais un tel serveur protégé et seul le fichier RELEASE-NOTES révélait la version du Tomcat. toutes les autres techniques n'ont pas permis de révéler les informations de version.

1
anjanb

Sous Linux pour vérifier la version de Tomcat

cd /opt/Tomcat/bin

./catalina.sh version
1
Narendra Kumar

Cette commande que vous pouvez vérifier presque tout:

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

Et la sortie ressemble à ceci

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

Nous fonctionnons dans un environnement Windows et je devais trouver un moyen d’extraire la version de Tomcat de l’environnement Java. Sans connaître la version, je ne pouvais pas déterminer les répertoires. J'ai finalement trouvé le meilleur moyen d'interroger le service Tomcat en utilisant:

C:\temp> sc query | trouver/je "Tomcat"
SERVICE_NAME: Tomcat6
DISPLAY_NAME: Apache Tomcat 6.0 Tomcat6

1
kenbrown_ct

exécuté sur le terminal du serveur Unix

w3m http://localhost:8080/

pour quitter, appuyez sur q et sur y

Démarrez simplement Tomcat et recherchez " Nom de la version du serveur " dans catalina.logs et vous obtiendrez la version de votre Tomcat. Par exemple:

"Journal de bord 07. 2019 11:25:40. Journal org.Apache.catalina.startup.VersionLoggerListener INFORMATION: Nom de la version du serveur: Apache Tomcat / 9.0.16 "

0
Shubh

Dans les environnements de type Unix, je vous recommande également de vérifier la ligne de commande du processus en cours d'exécution:

$ 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
...

On peut utiliser des comportements étranges subtils en raison de variables d’environnement (système d’exploitation) et de propriétés système (Java) définies sur des valeurs inattendues. En raison d'une version obsolète de Tomcat setenv.sh, un Tomcat 8 a démarré avec les classes d'un Tomcat 7 sur le chemin d'accès aux classes. Assurez-vous que les options de ligne de commande du processus telles que -Dcatalina.base, -Dcatalina.home et -classpath ont du sens.

0
Abdull

Gestionnaire de tâches Windows> Processus> rechercher Tomcat> clic droit> emplacement du fichier ouvert> si vous exécutez Tomcat7w.exe, il est visible dans la description.

Tomcat doit fonctionner pour être visible dans les processus, sinon sous Windows Vista/7, accédez au gestionnaire de tâches> onglet (services), recherchez Tomcat, démarrez-le, puis procédez au traitement.

0
madlymad

Vous pouvez trouver les informations sur le serveur via sa page d'état:

{running-Tomcat-url}/manager/status

Sur cette page, vous pouvez voir la version de Java sur laquelle votre Tomcat fonctionne.

Remarque: j'ai également collé cette réponse sur Problème de compatibilité avec Tomcat6 et JRE7. Major.minor version 51.0 non supportée

0
Carlo Ledesma