2012-07-15 4 views
32

Ich muss Connnector/J JAR in $CATALINA_HOME/lib von Tomcat7 auf Amazon EC2 kopieren. Wie finde ich den vollständigen Pfad von $CATALINA_HOME/lib auf Amazon Linux in Amazon EC2?

+0

Haben Sie Zugriff auf die Linux-Konsole? Können Sie den Befehl "set" ausführen, um Umgebungsvariablenwerte aufzulisten? –

+0

@AleZalazar 'Ja' Ich kann das tun. –

+2

hat echo $ CATALINA_HOME nicht funktioniert? – Keshi

Antwort

72

Tomcat kann Ihnen auf verschiedene Arten sagen. Hier ist die einfachste:

$ /path/to/catalina.sh version 
Using CATALINA_BASE: /usr/local/apache-tomcat-7.0.29 
Using CATALINA_HOME: /usr/local/apache-tomcat-7.0.29 
Using CATALINA_TMPDIR: /usr/local/apache-tomcat-7.0.29/temp 
Using JRE_HOME:  /System/Library/Frameworks/JavaVM.framework/Versions/CurrentJDK/Home 
Using CLASSPATH:  /usr/local/apache-tomcat-7.0.29/bin/bootstrap.jar:/usr/local/apache-tomcat-7.0.29/bin/tomcat-juli.jar 
Server version: Apache Tomcat/7.0.29 
Server built: Jul 3 2012 11:31:52 
Server number: 7.0.29.0 
OS Name:  Mac OS X 
OS Version:  10.7.4 
Architecture: x86_64 
JVM Version: 1.6.0_33-b03-424-11M3720 
JVM Vendor:  Apple Inc. 

Wenn Sie nicht wissen, wo catalina.sh (oder es nie aufgerufen wird), können Sie in der Regel über ps finden:

$ ps aux | grep catalina 
chris   930 0.0 3.1 2987336 258328 s000 S Wed01PM 2:29.43 /System/Library/Java/JavaVirtualMachines/1.6.0.jdk/Contents/Home/bin/java -Dnop -Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager -Djava.library.path=/usr/local/apache-tomcat-7.0.29/lib -Djava.endorsed.dirs=/usr/local/apache-tomcat-7.0.29/endorsed -classpath /usr/local/apache-tomcat-7.0.29/bin/bootstrap.jar:/usr/local/apache-tomcat-7.0.29/bin/tomcat-juli.jar -Dcatalina.base=/Users/chris/blah/blah -Dcatalina.home=/usr/local/apache-tomcat-7.0.29 -Djava.io.tmpdir=/Users/chris/blah/blah/temp org.apache.catalina.startup.Bootstrap start 

Vom ps Ausgabe, können Sie siehe sowohl catalina.home als auch catalina.base. catalina.home ist, wo die Tomcat-Basisdateien installiert sind, und catalina.base ist, wo die laufende Konfiguration von Tomcat vorhanden ist. Diese werden oft auf denselben Wert gesetzt, es sei denn, Sie haben Ihren Tomcat für mehrere (Konfigurations-) Instanzen konfiguriert, die von einer einzelnen Tomcat-Basisinstallation aus gestartet werden.

Sie können auch die JVM direkt abfragen, wenn Sie es nicht in einer ps Auflistung finden:

$ jinfo -sysprops 930 | grep catalina 
Attaching to process ID 930, please wait... 
Debugger attached successfully. 
Server compiler detected. 
JVM version is 20.8-b03-424 
catalina.base = /Users/chris/blah/blah 
[...] 
catalina.home = /usr/local/apache-tomcat-7.0.29 

Wenn Sie das nicht schaffen, können Sie immer versuchen, eine JSP zu schreiben, die die Werte Dumps der beiden Systemeigenschaften catalina.home und catalina.base.

+2

Vielleicht aktualisieren Sie auf: "ps aux | grep catalina.home" für eine bessere Hervorhebung im Terminal. – DenniJensen