如何在Linux上设置类路径?
export CLASSPATH=/your/stuff/
或保存系统范围内的设置:
export CLASSPATH=$CLASSPATH:/your/addition/
如果你指的是Java类路径 (来自你的标签),那么这只是不同于Windows中的路径分隔符(:而不是;)。例如
java -classpath /mydir/mylib.jar:/otherdir/otherlib.jar com.MyProgram -Xmx64m
我不认为你应该在Linux或系统环境变量CLASSPATH中任何其他操作系统。
每个项目都应该有自己的类路径设置。它们通常由脚本或约定来设置,所以不需要系统环境变量。
此外,如果两个项目需要冲突的JAR,你会怎么做?
该环境类路径是否包含计算机上每个项目所需的每个JAR?这不切实际。
classpath环境变量可能是Java 1.0的标准,但我认为它不应该是现在。
可以为每个进程设置一个classpath变量,即仅针对当前shell及其衍生的子进程。这在java启动脚本的unix中很常见。 – ordnungswidrig 2009-03-03 11:46:31
创建一个小的shell脚本设置类路径:
#!/bin/bash
export JAVA_HOME=...
cp=$(find lib -name "*.jar" -exec printf :{} ';')
if [[ -n "$CLASSPATH" ]]; then
cp="$cp;CLASSPATH"
fi
"$JAVA_HOME/bin/java" -classpath "$cp" ...
您可以省略-classpath“$ CLASSPATH”,因为java进程将使用环境变量CLASSPATH anymway的内容。 – ordnungswidrig 2009-03-03 11:47:15
这是什么壳呢? BASH,TCSH,BOURNE,...? – Ascalonian 2009-03-02 15:09:59