Ho 2 progetti Web Java. Uno gira su JDK 1.5 e l'altro gira su JDK 1.6. Voglio eseguirli entrambi sullo stesso computer, ma la variabile di ambiente JAVA_HOME può avere solo un valore. Voglio impostare JAVA_HOME per ogni server Tomcat.Come impostare JAVA_HOME per più istanze di Tomcat?
risposta
Una cosa che potresti fare sarebbe modificare catalina.sh (basato su Unix) o catalina.bat (basato su Windows).
All'interno di ciascuno degli script è possibile impostare determinate variabili che erediteranno solo i processi creati nella shell. Così, per catalina.sh, utilizzare la seguente riga:
export JAVA_HOME="intented java home"
e per Windows utilizzano
set JAVA_HOME="intented java home"
La versione di Windows non dovrebbe differire dalla versione unix? Non sono un tipo in batch, ma ho pensato che fosse "set", o sono uscito con me stesso? –
Sto usando Windows XP e ho aggiunto la riga "export JAVA_HOME =" C: \ Programmi \ Java \ jdk1.6.0_12 "all'inizio del file Tomcat/bin/catalina.bat Ma Tomcat non può iniziare Herr è una parte del mio file rem Indovina CATALINA_HOME se non definito export JAVA_HOME = "C: \ Program Files \ Java \ jdk1.6.0_12" set JAVA_OPTS =% JAVA_OPTS% -Xmx512m set CURRENT_DIR =% cd% se non "% CATALINA_HOME%" == "" goto gotHome set CATALINA_HOME =% CURRENT_DIR% se esiste "% CATALINA_HOME% \ bin \ catalina.bat" goto okHome –
Ah. Uso diabolico della copia incolla! Non intendevo metti l'esportazione per la versione di Windows. Ry4an era corretto in quel set è il comando corretto e risposta. – bogertron
inoltre, notare che non ci dovrebbe essere alcun spazio dopo =
:
set JAVA_HOME=C:\Program Files\Java\jdk1.6.0_27
In UNIX ho avuto questo problema, ho modificato catalina.sh
manualmente e inserito
export JAVA_HOME=/usr/lib/jvm/java-6-sun-1.6.0.24
echo "Using JAVA_HOME: $JAVA_HOME"
come le prime 2 linee. Ho provato a impostare il JAVA_HOME
in /etc/profile
ma non è stato d'aiuto.
Questo ha funzionato alla fine.
Solo una nota ...
Se si aggiunge che il codice per setclasspath.bat o setclasspath.sh, sarà effettivamente essere utilizzato da tutti gli script di Tomcat si potrebbe correre, piuttosto che solo Catalina.
Il metodo per impostare la variabile è come l'altro ha descritto.
posto un setenv.sh nella directory bin con
JAVA_HOME=/usr/java/jdk1.6.0_43/
JRE_HOME=/usr/java/jdk1.6.0_43/jre
o un altra versione vostra corsa.
Non c'è bisogno di aggiungere 'JAVA_HOME' e' JRE_HOME'. _Se sono specificati JRE_HOME e JAVA_HOME, viene utilizzato JRE_HOME._ http://tomcat.apache.org/tomcat-7.0-doc/RUNNING.txt – user454322
Linux basata Tomcat6 dovrebbe avere /etc/tomcat6/tomcat6.conf
# System-wide configuration file for tomcat6 services
# This will be sourced by tomcat6 and any secondary service
# Values will be overridden by service-specific configuration
# files in /etc/sysconfig
#
# Use this one to change default values for all services
# Change the service specific ones to affect only one service
# (see, for instance, /etc/sysconfig/tomcat6)
#
# Where your java installation lives
#JAVA_HOME="/usr/lib/jvm/java-1.5.0"
# Where your tomcat installation lives
CATALINA_BASE="/usr/share/tomcat6"
...
Se sei un utentedi Windows, inserire il contenuto di seguito in un file setenv.bat che si deve creare nella directory Tomcat bin.
set JAVA_HOME=C:\Program Files\Java\jdk1.6.x
Se sei un utenteLinux, inserire il seguente contenuto in un file disetenv.sh che è necessario creare in Tomcat bin directory.
JAVA_HOME=/usr/java/jdk1.6.x
Ho avuto lo stesso problema mio sistema operativo è Windows 8 e sto usando Tomcat 8, ho appena modificato il setclasspath .bat file nella cartella bin e impostare JAVA_HOME e JRE_HOME così ...
@echo off
...
...
set "JRE_HOME =% Programmi% \ Java \ jre8"
set "JAVA_HOME =% Programmi% \ Java \ jdk1.7.0_03"
...
...
e funziona bene per me, ora ......
È possibile aggiungere setenv.sh nella directory bin con:
export JAVA_HOME = $ (readlink -f/usr/bin/java | sed "s: bin/java ::")
e cambierà dinamicamente quando si aggiornano i pacchetti.
Per Debian distro possiamo ignorare l'impostazione di default tramite
/etc/default/tomcat6
Impostare il JAVA_HOME
punta alla versione Java che si desidera.
JAVA_HOME=/usr/lib/jvm/java-7-openjdk-amd64
Credo che questa è una pratica migliore (Si può essere hanno molti istanza di Tomcat nel computer stesso, si vuole per esempio Tomcat utilizzare altri Java Runtime Environment):
Questo è il file interno manuale: catalina.sh
# JRE_HOME Must point at your Java Runtime installation.
# Defaults to JAVA_HOME if empty. If JRE_HOME and JAVA_HOME
# are both set, JRE_HOME is used.
- 1. Tomcat multiple istanze contemporaneamente
- 2. Nutch-Cygwin Come impostare JAVA_HOME
- 3. Come cambio JAVA_HOME per ant?
- 4. Manutenzione di JNDI su più istanze di Tomcat
- 5. GitLab CI: Impossibile impostare JAVA_HOME
- 6. Versione JVM Tomcat diversa da JAVA_HOME
- 7. Tomcat startup.sh problemi a trovare JAVA_HOME
- 8. come impostare JAVA_OPTS per Tomcat in Windows?
- 9. utilizza più CATALINA_BASE per configurare le istanze di tomcat 6 su windows
- 10. Impostazione di JAVA_HOME per intelliJ?
- 11. Differenza tra JAVA_HOME e JRE_HOME
- 12. Come impostare JAVA_HOME in Mac in modo permanente?
- 13. Più istanze di assegni
- 14. Come impostare CKEditor per istanze multiple con altezze diverse?
- 15. Tomcat 6.0 ed Eclipse. Più istanze del server si comportano in modo diverso
- 16. Imposta la versione java su due diverse istanze Tomcat
- 17. Come evitare più istanze di un programma?
- 18. Limita più istanze di un'applicazione
- 19. Come impostare la versione per Tomcat in un servlet web.xml?
- 20. Più istanze di iPhone Simulator?
- 21. Come configurare Tomcat per utilizzare più di 1 CPU?
- 22. Più istanze dello stesso componente di reazione
- 23. ZeroClipboard + angolare, più istanze
- 24. Come avere più istanze di servizio in Android
- 25. phaser.io più istanze phaser.game
- 26. Variabile JAVA_HOME
- 27. SET JAVA_HOME per riflettere java versione java
- 28. Prevenzione di più istanze di un'applicazione GTK
- 29. Come impostare il servlet di root in Tomcat 6?
- 30. JAVA_HOME impostato in modo errato. Come resettarlo?
Domanda correlata (per Linux): http://askubuntu.com/questions/154953/specify-jdk-for-tomcat7 –