Mam 2 projekty WWW Java. Jeden działa na JDK 1.5, a drugi działa na JDK 1.6. Chcę uruchomić je oba na tym samym komputerze, ale zmienna środowiskowa JAVA_HOME może mieć tylko jedną wartość. Chcę ustawić JAVA_HOME dla każdego serwera Tomcat.Jak ustawić JAVA_HOME dla wielu instancji Tomcat?
Odpowiedz
Jedna rzecz, którą można zrobić, to zmodyfikować catalina.sh (oparty na Uniksie) lub catalina.bat (oparty na systemie Windows).
W każdym ze skryptów można ustawić pewne zmienne, które będą dziedziczyć tylko procesy utworzone w powłoce. Więc dla catalina.sh należy stosować następujące linie:
export JAVA_HOME="intented java home"
i Windows użyć
set JAVA_HOME="intented java home"
Czy wersja systemu Windows nie powinna różnić się od wersji systemu Unix? Nie jestem partyjnym facetem, ale myślałem, że to "set", czy też się spotykam? –
Używam systemu Windows XP i dodałem wiersz "export JAVA_HOME =" C: \ Program Files \ Java \ jdk1.6.0_12 "na początku pliku Tomcat/bin/catalina.bat Ale Tomcat nie może uruchomić Herr jest częścią mojego pliku rem Guess CATALINA_HOME jeśli nie zdefiniowano export JAVA_HOME = "C: \ Program Files \ Java \ jdk1.6.0_12" zestaw JAVA_OPTS =% JAVA_OPTS% -Xmx512m zestaw CURRENT_DIR =% cd% jeśli nie "% CATALINA_HOME%" == "" goto getHome zestaw CATALINA_HOME =% CURRENT_DIR% jeśli istnieje "% CATALINA_HOME% \ bin \ catalina.bat" goto okHome –
Ah. Złe użycie kopii wklej! Nie chciałem wstaw eksport do wersji Windows Ry4an był poprawny w tym zestawie jest poprawne polecenie e odpowiedź. – bogertron
Należy również pamiętać, że nie powinno być żadnych spacji po =
:
set JAVA_HOME=C:\Program Files\Java\jdk1.6.0_27
W systemie UNIX miałem ten problem, ręcznie edytowałem catalina.sh
i wprowadziłem
export JAVA_HOME=/usr/lib/jvm/java-6-sun-1.6.0.24
echo "Using JAVA_HOME: $JAVA_HOME"
jako pierwsze 2 linie. Próbowałem ustawić JAVA_HOME
w /etc/profile
, ale to nie pomogło.
To działało w końcu.
Tylko uwaga ...
Jeśli dodać, że kod do setclasspath.bat lub setclasspath.sh, że faktycznie będą używane przez wszystkich skryptów Tomcat mógłby biegać, a nie tylko Catalina.
Sposób ustawiania zmiennej jest taki, jaki opisali inni.
Umieść setenv.sh w katalogu bin z
JAVA_HOME=/usr/java/jdk1.6.0_43/
JRE_HOME=/usr/java/jdk1.6.0_43/jre
albo inna wersja Twój bieg.
Nie trzeba dodawać "JAVA_HOME" i "JRE_HOME". _Jeśli podano JRE_HOME i JAVA_HOME, użyto JRE_HOME._ http://tomcat.apache.org/tomcat-7.0-doc/RUNNING.txt – user454322
Linux oparta tomcat6 powinien mieć /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"
...
Jeżeli jesteś Okna użytkownik umieścić treść poniżej w setenv.bat pliku, który musi utworzyć w katalogu Tomcat bin.
set JAVA_HOME=C:\Program Files\Java\jdk1.6.x
Jeżeli jesteś Linux użytkownika, umieścić poniżej treści w setenv.sh pliku, który należy utworzyć w Tomcat bin katalogu.
JAVA_HOME=/usr/java/jdk1.6.x
miałem ten sam problem mój jest system operacyjny Windows 8 i używam Tomcat 8, Właśnie redagował setclasspath.bat plik w folderze bin i ustawić JAVA_HOME i JRE_HOME tak ...
@echo off
...
...
zestaw „JRE_HOME =% ProgramFiles% \ Java \ jre8"
zestaw "JAVA_HOME =% ProgramFiles% \ Java \ jdk1.7.0_03"
...
...
i działa dobrze dla mnie teraz ......
Możesz dodać setenv.sh w katalogu bin z:
export JAVA_HOME = $ (readlink -f/usr/bin/java | sed "s: bin/java ::")
i zmieni się dynamicznie po aktualizacji pakietów.
Dla dystrybucji Debian możemy zastąpić ustawienie domyślne poprzez
/etc/default/tomcat6
ustawić JAVA_HOME
skierowanymi do wersji java chcesz.
JAVA_HOME=/usr/lib/jvm/java-7-openjdk-amd64
myślę, że to jest najlepsze praktyki (może być mieć wiele instancji Tomcat na tym samym komputerze, chcesz na przykład Tomcat użyć innego Java Runtime Environment):
To jest instrukcja wewnątrz pliku: 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 6 JAVA_HOME
- 2. Nutch-Cygwin Jak ustawić JAVA_HOME
- 3. Jak zmienić kod JAVA_HOME dla ant?
- 4. Wersja Tomcat JVM inna niż JAVA_HOME
- 5. Jak ustawić attr_accessor dla zmiennej instancji dynamicznej?
- 6. Jak ustawić serwer proxy dla instancji JBoss
- 7. Zmienna JAVA_HOME
- 8. jak ustawić JAVA_OPTS dla Tomcat w systemie Windows?
- 9. Jak ustawić wersję dla Tomcat w serwletie web.xml?
- 10. przebiegu wielu serwerów tomcat
- 11. Historia wielu instancji QFileDialog
- 12. Przydzielanie sterty Java dla Tomcat na instancji EC2
- 13. Jak ustawić strefę czasową bazy danych dla instancji AWS RDS
- 14. Jak ustawić rozmiar kompresji max tomcat gzip?
- 15. Tomcat 6.0 i Eclipse. Wiele instancji serwera zachowuje się inaczej
- 16. Jak uaktualnić Tomcat na linux
- 17. Jak ustawić pamięć dla maszyny wirtualnej w IntelliJ? Czy muszę osobno ustawić opcje pamięci Tomcat?
- 18. Tworzenie dokera Tworzenie wielu instancji dla tego samego obrazu
- 19. Android: Miksowanie wielu instancji AudioTrack?
- 20. Jak kontrolować szyfry SSL dostępne dla Tomcat
- 21. Java_home w Maven
- 22. Osadzanie wielu instancji MS Word w TOleContainer
- 23. Jak ustawić listę rozwijaną do wielu wartości?
- 24. Instalowanie wielu instancji MSI z dynamiczną nazwą instancji
- 25. Tomcat Hot Deploy do instancji obsługującej wiele aplikacji
- 26. Tomcat 7 - gdzie mam ustawić "właściwości systemu"?
- 27. Używanie wielu instancji dbcontext i wstrzykiwanie zależności
- 28. oddzielny rejestrator dla każdej instancji biblioteki
- 29. Czy jest możliwe posiadanie "procesowej" instancji Tomcat do celów testowych?
- 30. Python: Konwersja wielu instancji tego samego klucza do wielu wierszy
Powiązane pytanie (dla systemu Linux): http://askubuntu.com/questions/154953/specify-jdk-for-tomcat7 –