gpt4 book ai didi

java - CLASSPATH 中的空格

转载 作者:搜寻专家 更新时间:2023-10-30 21:28:53 25 4
gpt4 key购买 nike

我正在使用 Windows PC 并在上面安装了 cygwin!我已经将我所有的 jar 组织在几个目录中的一个目录下!我正在编写一个 bash 脚本,通过遍历作为参数传递的目录来设置 CLASSPATH,如下所示:

for JAR_FILE in `ls *.jar`
do
CLASSPATH="$DIRECTORY_TO_LOOK_FOR_JARS"/$JAR_FILE:$CLASSPATH
done

每当传递的目录中有空格时,如 /cygdrive/c/Documents and Settings/user/My Jars 并且我运行 java -cp $CLASSPATH somepackage.someclass,它会抛出一个错误,指出未找到类 ,因为 CLASSPATH 变量在 /cygdrive/c/Documents 之后被拆分。

有人可以帮我解决这个问题吗?

最佳答案

查看此 article .

您可以将完整的类路径包含在双引号中

java -classpath "C:/Documents and Settings/user/project/lib/axis.jar; C:/Documents and Settings/user/project/lib/axis-ant.jar;" TestClient

或者类路径中的每个 jar

java -classpath "C:/Documents and Settings/user/project/lib/axis.jar"; "C:/Documents and Settings/user/project/lib/axis-ant.jar;" TestClient

在你的情况下是这样的:

for JAR_FILE in `ls *.jar`
do
CLASSPATH="$DIRECTORY_TO_LOOK_FOR_JARS/$JAR_FILE":$CLASSPATH
done

很难看清,但我移动了结束双引号。

关于java - CLASSPATH 中的空格,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3003830/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com