Я пытаюсь найти способ динамически создавать переменную en environment, содержащую список файлов JAR в папке WEB-INF/lib моего приложения.windows batch command for loop set variable variable
Это то, что у меня есть до сих пор, но оно переписывает себя каждый раз, поэтому, когда вы достигаете конца цикла, у вас есть только последний файл из цикла, установленного в переменной.
SETLOCAL ENABLEDELAYEDEXPANSION
for %%f IN (WEB-INF/lib/*.jar) DO (
SET JAR_LIST=%JAR_LIST%;%%f
)
ECHO JAR_LIST -- %JAR_LIST%
Так что это производит ...
C: \ Apache \ Tomcat6.0 \ WebApps \ MyApp> (SET JAR_LIST = .; xsltcbrazil.jar)
C: \ Apache \ Tomcat6.0 \ WebApps \ MyApp> (SET JAR_LIST = .; xsltcejb.jar)
C: \ Apache \ Tomcat6.0 \ WebApps \ MyApp> (SET JAR_LIST = .; xsltcservlet.jar)
C: \ Apache \ Tomcat 6,0 \ WebApps \ MyApp> ECHO JAR_LIST -;. Xsltcservlet.jar
JAR_LIST -;. Xsltcservlet.jar
Смотрите также http://stackoverflow.com/questions/22774259/issue-with-setting-environment-variable-through-bat-file-to-execute-a-java-progr. Если вы хотите использовать эту переменную позже, вам нужно «ENDLOCAL & SET JAR_LIST =% JAR_LIST%». – ajb