fturban
Goto Top

Batch mit variablem Java-Pfad möglich?

Hallo zusammen,

bin neu hier und mich treibt gerade die folgende Frage um:

Ich habe ein vorgegebenes Batch-Skript, in dem auf ein File im bestehenden Java-Verzeichnis verwiesen wird.
Nach einem Java-Update verändert sich der Java-Pfad (aktuell hier: \jre1.8.0_191\ ) und ich muss diesen jedes Mal manuell auf die neue Java-Version in der Batch anpassen.

Diese beiden Zeilen sind betroffen:

set path=C:\Program Files (x86)\Java\jre1.8.0_191\bin;%path%
set JAVA_HOME=C:\Program Files (x86)\Java\jre1.8.0_191

Was gibt es für eine Lösung für mich, wenn ich davon ausgehe, dass in diesem Pfad C:\Program Files (x86)\Java\ nur das jew. aktuelle Java hinterlegt ist? Hintergrund ist der, dass ich auch ab und an mal Urlaub habe oder krank bin und dann die Batch trotzdem funktionieren muss face-wink

Vielen Dank für Eure Hilfe

Frank

Content-Key: 389733

Url: https://administrator.de/contentid/389733

Printed on: April 18, 2024 at 18:04 o'clock

Member: Kraemer
Solution Kraemer Oct 17, 2018 at 08:15:29 (UTC)
Goto Top
Moin,

lies den Pfad doch einfach aus der Registry aus.

Gruß

https://docs.oracle.com/javase/9/install/installation-jdk-and-jre-micros ...
Member: fturban
fturban Oct 18, 2018 at 13:38:39 (UTC)
Goto Top
Salü,

vielen Dank für den Hinweis - ich habe jetzt etwas gefunden, mit dem ich den Pfad mit dem neuesten Release auslesen kann.

@echo off & setlocal

if not defined ProgramFiles(x86) (
set "RegKey=HKEY_LOCAL_MACHINE\SOFTWARE\JavaSoft\Java Runtime Environment"
) else (
set "RegKey=HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\JavaSoft\Java Runtime Environment"
)

for /f "tokens=2*" %%a in ('reg query "%RegKey%" /s ^| findstr /i /r /c:"^ * InstallDir"') do (
set "JRE-InstallDir=%%bbin"
)

echo %JRE-InstallDir%

Jetzt bin ich aber leider noch nicht firm im skripten und müsste das als Variable in meinen Pfad einbauen... Könnte ich da noch einmal Hilfe bekommen?
Viele Grüße...