konto usunięte

Temat: Windows i kilka wersji Java

Hej,
Może trochę NTG, ale być może ktoś sie już spotkał z podobnym problemem...

Chcę mieć na swoim serwerze buildowym (Windows 7) zainstalowaną java 7 i 6 - do tej pory wszystkie projekty używają jdk 1.6, chcę po kolei przenosić projekty na 1.7 - wszystkie zmiany MUSZĄ BYĆ przeźroczyste dla innych użytkowników i "idiotoodporne".

Co zrobiłem:
-Doinstalowanie jdk 1.7
-Dołożyłem User Environment Variable JAVA_HOME=~jdk1.7 (przesłania System Environment Variable %JAVA_HOME=~jdk1.6)
- Zmiana zmiennej Systemowej PATH z ...C:\java\jdk1.6\bin;... na ...%JAVA_HOME%\bin

Tutaj pojawil sie problem:

Oczekiwałem, ze do zmiennej PATH zostanie wzięta moja (nadpisana) wartość %JAVA_HOME%=1.7, tymczasem ten ^%*&^%!!! widzi wartość zmiennej %JAVA_HOME% ustawiona na poziomie sytemu (1.6). Próbowałem zdefiniować własny PATH (na poziomie User Environment Variables ) ze ścieżką do jdk 1.7, ale PATH usera jest doklejany NA KONCU PATH Systemowego - wiec i tak ścieżka do java 1.6 jest brana pod uwagę...

Restart nie pomógł, zmiana platformy nie wchodzi w grę. Do buildu używam Maven 3.

Na chwile obecna widzę tylko takie rozwiązanie, które wymaga modyfikacji skryptów buildowych (czego chciałbym uniknąć):
-zdefiniować zmienna systemowa JAVA_HOME_7
- dodać do bat'a buildowego set PATH=%JAVA_HOME_7%;%PATH%

Macie jakieś inne pomysły? Tak jak pisalem: generalnie mam zwiazane rece, zmiany musza byc "chirurgiczne" :-)
Michał W.

Michał W. Przyszly wlasciciel
firmy
informatyczno-progra
mistycznej

Temat: Windows i kilka wersji Java

Wyglada na to ze zmienna path jest wyjatkowa i faktycznie zawartosc usera jest doklejana na koncu.
Gdybym mial taki problem to bym sprobowal go rozwiazac na te dwa sposoby, zaznaczam ze nie wiem czy Ci chociaz jeden zadziala.

1) skrypt uruchamiany po zalogowaniu przestawiajacy zmienne komenda setx/set
"A simple solution would
be to set the path in the logon script, using setx.exe"
zrodlo:
http://www.winvistatips.com/windows-2003-can-u-overrid...

2) wykorzystaj narzedzie Kixtart
"If you start reading the Kixtart "kix32.doc" you will find that kixtart has
a function for setting DOS Envirnoments"

zrodlo: http://www.itlisting.org/5-windows/cd485c9658467497.aspx

konto usunięte

Temat: Windows i kilka wersji Java

Dzieki,
Logon Script brzmi sensownie.

Dwójka odpada - na build serverze instalujemy tylko te rzeczy, które muszą tam być (bezpieczeństwo).

konto usunięte

Temat: Windows i kilka wersji Java

A moze by po prostu zrobic plik wsadowy, w ktorym przed uruchomieniem java.exe zmienisz tymczasowo zmienne srodowiskowe?

Nie wiem czy to tak dziala w windowsie, ale pod linuxem robie tylko

export JAVA_HOME=....

i wsio

Po co sie tak motac?

Następna dyskusja:

Java + Windows API




Wyślij zaproszenie do