2010-12-02 11 views
7

Ich mache die meisten meiner Arbeit gegen JDK 1.5 - aber gelegentlich muss ich auf 1.6 wechseln. Es ist ein bisschen schmerzhaft, wenn ich manuell die Systemvariable 'JAVA_HOME' ändern muss, wenn ich an einem Projekt arbeiten muss (und nein, Eclipse spielt in diesen Szenarien nicht gut - vertraue mir ..) .Ich habe es versucht.)Skript zu ändern JAVA_HOME Systemvariable in Windows

Ich bin auf der Suche nach einem Registry-Skript oder Windows-Shell-Skript oder für alle diese Mittel, mit denen ich diese Systemvariable mit etwas "umschalten" kann, die einfach zu bedienen ist.

Ich habe mit dem Befehl 'set' verstimmt, aber das setzt nur die Variable für diese bestimmte Befehlsinstanz - nicht global.

Vielen Dank im Voraus.

EDIT # 1: Points of Hinweis:

  • Verwenden Sie die JAVA_HOME Variable in der Pfadvariablen als auch, auf diese Weise nur die JAVA_HOME ändern (die in vielen Projekten verwendet wird, anyways [maven, ant, etc])
  • Schreiben Sie den Befehl in ein paar Batch-Skripts für die einfache Verwendung
  • Wenn Sie die Änderung machen die Windows-Befehlssitzung wird es nicht sofort widerspiegeln. Sie müssen es schließen und erneut öffnen.
+0

3-d: Sie können beide verwenden "set" & "setx" in Ihrem Skript, so Einstellung gleiche Umgebungsvariable für aktive Benutzersitzung und global gleichzeitig. –

+0

@barti - danke für deine Hilfe, für mein Szenario funktioniert Setx perfekt. Vielen Dank! – javamonkey79

Antwort

16

könnten Sie verwenden setx zu diesem Zweck

Wie so:

setx /M JAVA_HOME "C:\Program Files (x86)\Java\jdk1.6.0_17" 
+0

Ja, ich habe gerade diesen Befehl bemerkt - haben Sie eine halbkomplette Lösung? (+1) – javamonkey79

+0

'setx JAVA_HOME" c: \ Pfad "' (HKCU) oder 'setx JAVA_HOME" c: \ Pfad "-m' (HKLM) –

+0

Cool, es war das '/ M' das ich vermisste. Vielen Dank! – javamonkey79

Verwandte Themen