wecky 10 Geschrieben 27. Mai 2008 Melden Teilen Geschrieben 27. Mai 2008 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 Zitieren Link zu diesem Kommentar
Biber 10 Geschrieben 27. Mai 2008 Melden Teilen Geschrieben 27. Mai 2008 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 EnableDelayedExpansionset "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 Zitieren Link zu diesem Kommentar
wecky 10 Geschrieben 28. Mai 2008 Autor Melden Teilen Geschrieben 28. Mai 2008 Hallo, es funktioniert immer noch nicht! Ich habe nun die EnableDelayedExpansion gesetzt und ein Leerzeichen im Verzeichnis habe ich auch nicht. Gruß Andreas Zitieren Link zu diesem Kommentar
Biber 10 Geschrieben 28. Mai 2008 Melden Teilen Geschrieben 28. Mai 2008 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 Zitieren Link zu diesem Kommentar
Empfohlene Beiträge
Schreibe einen Kommentar
Du kannst jetzt antworten und Dich später registrieren. Falls Du bereits ein Mitglied bist, logge Dich jetzt ein.