2010-03-11 6 views
0

Dans un fichier de commandes Windows, je souhaite construire un chemin de classe de fichiers .jar dans un répertoire approuvé.Fichiers batch win32: rassembler et concaténer tous les fichiers correspondants

Je pensais que cela pourrait fonctionner:

set TMPCLASSPATH= 
for %%J in (*.jar) do set TMPCLASSPATH=%TMPCLASSPATH%;%%J 

Cela ne semble pas fonctionner, car %TMPCLASSPATH% semble être évalué une fois au début de la boucle.

Des suggestions?

Répondre

2

Vous devez utiliser l'expansion retardée, vous ajoutez SETLOCAL ENABLEDELAYEDEXPANSION en haut de votre fichier de commandes, et utilisez! plutôt que% autour des noms de variables.

SETLOCAL ENABLEEXTENSIONS 
SETLOCAL ENABLEDELAYEDEXPANSION 
set TMPCLASSPATH= 
for %%j IN (*.jar) DO set TMPCLASSPATH=!TMPCLASSPATH!;%%j 
echo %TMPCLASSPATH% 
+0

fonctionne comme un charme! Merci! :-) –

Questions connexes