我正在脚本中执行此操作:
if [ -d $SERVICE_HOME/../config ]; then
CLASSPATH="$SERVICE_HOME/../config:$CLASSPATH"
fi
并且 /config 文件夹中也有子文件夹,子文件夹中的文件会被添加到类路径中吗?
答案1
答案取决于文件夹的内容。
文件夹中的类文件
文件夹下的层次结构与类的包结构一一映射。
例如,该文件./org/example/MyClass.class
将用于该课程org.example.MyClass
。
文件夹中的 jar 文件
这些文件将被忽略,因为必须将 jar 文件明确添加到类路径中。
例如CLASSPATH=${CLASSPATH}:${SERVICE_HOME}/mylib.jar
一些笔记
- 类路径应该通常情况下仅附加。通过在开头添加元素,您可能会偶然覆盖另一个类。
- 在 bash 中你也可以使用这个较短的结构来附加:
CLASSPATH+="$SERVICE_HOME/../config"