2

在 Unix 系统上,使用 find 很容易编译 CLASSPATH:

LIBDIR=`find lib/ -name \*.jar`
for DIR in $LIBDIR:
do
    CLASSPATH="$CLASSPATH:$DIR"
done

java -classpath $CLASSPATH com.example.MyClass

Windows 批处理文件中的等效项是什么?

4

2 回答 2

4

在 Windows XP 上可以通过以下方式实现相同的功能:

setlocal ENABLEDELAYEDEXPANSION
FOR /R .\lib %%G IN (*.jar) DO set CLASSPATH=!CLASSPATH!;%%G

java -classpath %CLASSPATH% com.example.MyClass
于 2008-12-11T12:52:35.650 回答
1

唯一的方法是使用延迟的环境变量扩展。你可以通过运行来做到这一点

cmd /v

然后你可以运行:

set var=.
FOR /r %%d IN (*.jar) DO SET var=!var!;%%d
set CLASSPATH=%var%
于 2008-12-11T12:57:24.610 回答