Jump to content

Lange Variable bei Batch (W2K Server)


Der letzte Beitrag zu diesem Thema ist mehr als 180 Tage alt. Bitte erstelle einen neuen Beitrag zu Deiner Anfrage!

Empfohlene Beiträge

Geschrieben

Hallo,

 

ich habe eine kleine Schleife geschrieben, die alle jar-Dateien in eine Variable packt, um sie dann mit Java ausführen zu können.

 

set CLASS_PATH=%CURRENT_DIR%

FOR %%c in ("%CURRENT_DIR%\lib\*.jar") DO set CLASS_PATH=!CLASS_PATH!;%%c

 

java -cp "!CLASS_PATH!" de.prog.dosomething %*

 

Das funktioniert bei WinXP und W2k3 auch sehr gut. Außer bei W2k, da wird die Variable abgeschnitten.

 

Hat jemand eine Idee?

 

Andreas

Geschrieben

Moin wecky,

 

dann hast Du wahrscheinlich

a) unter XP un W2k3 DelayedExpansion per Registry aktiviert und unter W2000 nicht

--> also im Batch für alle Fälle ein "setlocal EnableDelayedExpansion" am Anfang zufügen.

b) ist vielleicht das CURRENT_DIR unter W2k ein Verzeichnis mit Leerzeichen. Dann schreib den Schnipsel halt etwas robuster:

@echo off & setlocal EnableDelayedExpansion
set "CLASS_PATH=%CURRENT_DIR%"
FOR %%c in ("%CURRENT_DIR%\lib\*.jar") DO set "CLASS_PATH=!CLASS_PATH!;%%c"

java -cp "!CLASS_PATH!" de.prog.dosomething %*
[/Code]

 

Grüße

Biber

Geschrieben

Moin wecky,

 

dann lüfte doch auch die letzten Geheimnisse:

was steht bitte in

%CLASS_PATH% und was in %CURRENT_DIR% drin zu Beginn des Batches?

Bau bitte mal oben ein echo für die beiden Vaiablen ein und ein "pause"

 

Grüße

Biber

Der letzte Beitrag zu diesem Thema ist mehr als 180 Tage alt. Bitte erstelle einen neuen Beitrag zu Deiner Anfrage!

Erstelle ein Benutzerkonto oder melde dich an, um zu kommentieren

Du musst ein Benutzerkonto haben, um einen Kommentar verfassen zu können

Benutzerkonto erstellen

Neues Benutzerkonto für unsere Community erstellen. Es ist einfach!

Neues Benutzerkonto erstellen

Anmelden

Du hast bereits ein Benutzerkonto? Melde dich hier an.

Jetzt anmelden
×
×
  • Neu erstellen...