包括Java classpath中一个目录下的所有jars
是否有办法在classpath中包括一个目录内的所有jar文件?
我正在尝试java -classpath lib/*.jar:. my.package.Program
,但它无法找到肯定在这些jar中的类文件。 我是否需要将每个jar文件分别添加到classpath中?
963
3
是否有办法在classpath中包括一个目录内的所有jar文件?
我正在尝试java -classpath lib/*.jar:. my.package.Program
,但它无法找到肯定在这些jar中的类文件。 我是否需要将每个jar文件分别添加到classpath中?
如果你真的需要动态地指定所有的.jar文件,你可以使用shell脚本,或者[Apache Ant][1]。有一个叫做[Commons Launcher][2]的共享项目,它基本上可以让你把你的启动脚本指定为一个Ant构建文件(如果你明白我的意思)。
然后,你可以指定类似的东西。
你需要分别添加它们。 另外,如果你真的*需要指定一个目录,你可以把所有东西解压缩到一个目录里,然后把它添加到你的classpath中。 然而,我不推荐这种方法,因为你有可能在classpath的版本和不可管理性方面遇到奇怪的问题。
把jar文件看作是一个目录结构的根。是的,你需要分别添加它们。