编译CLASSPATH在Windows批处理文件
问题描述:
在Unix系统中,很容易通过使用find编译CLASSPATH:编译CLASSPATH在Windows批处理文件
LIBDIR=`find lib/ -name \*.jar`
for DIR in $LIBDIR:
do
CLASSPATH="$CLASSPATH:$DIR"
done
java -classpath $CLASSPATH com.example.MyClass
什么是在Windows批处理文件的aquivalent?
答
同样可以从Windows XP实现上:
setlocal ENABLEDELAYEDEXPANSION
FOR /R .\lib %%G IN (*.jar) DO set CLASSPATH=!CLASSPATH!;%%G
java -classpath %CLASSPATH% com.example.MyClass
+0
这在Windows XP中不起作用,除非你先运行cmd/v – kgiannakakis 2008-12-11 13:01:31
答
只有这样,才能做到这一点是使用延迟的环境变量扩展。你可以通过运行
cmd /v
然后你可以运行:
set var=.
FOR /r %%d IN (*.jar) DO SET var=!var!;%%d
set CLASSPATH=%var%
为什么不使用构建工具如Ant或Maven?他们可以以独立于平台的方式编译类路径条目。 – 2008-12-11 13:37:48