设置类路径的文件夹

时间:2012-01-29 12:25:51

标签: java jar classpath

从命令行,如何将Java CLASSPATH选项设置为指向包含多个jar文件的一个或多个目录?是否存在用于递归目录和子目录支持的通配符?

(我的JAR文件在几个子目录中排序。)

2 个答案:

答案 0 :(得分:61)

如果您使用的是Java 6或更高版本,则可以使用以下格式的通配符:

java -classpath ".;c:\mylibs\*;c:\extlibs\*" MyApp

如果要添加所有子目录:lib \ a \,lib \ b \,lib \ c \,除此之外没有其他机制:

java -classpath ".;c:\lib\a\*;c:\lib\b\*;c:\lib\c\*" MyApp

对于您想要完成的工作,没有像lib\*\*lib\**通配符这样的内容。

答案 1 :(得分:6)

使用命令

java -classpath ".;C:\MyLibs\a\*;D:\MyLibs\b\*" <your-class-name>

上面的命令只会将提到的路径设置为classpath一次,以执行名为TestClass的类。

如果您想执行多个类,那么您可以按照

进行操作
set classpath=".;C:\MyLibs\a\*;D:\MyLibs\b\*"

在此之后,您只需键入

即可执行任意数量的类
java <your-class-name>

上述命令将一直有效,直到您关闭命令提示符。但是在关闭命令提示符后,如果要重新打开命令提示符并尝试执行某些类,则必须在上述两种方法的帮助下再次设置类路径。(执行一个类和第二个类的第一种方法)一个用于执行更多类)

如果您只想将classpth设置一次,以便它可以每次都有效,那么请执行以下操作

1. Right click on "My Computer" icon
2. Go to the "properties"
3. Go to the "Advanced System Settings" or "Advance Settings"
4. Go to the "Environment Variable"
5. Create a new variable at the user variable by giving the information as below
    a.  Variable Name-     classpath
    b.  Variable Value-    .;C:\program files\jdk 1.6.0\bin;C:\MyLibs\a\';C:\MyLibs\b\*
6.Apply this and you are done.

请记住,每次都会有效。您不需要一次又一次地显式设置类路径。

注意:如果你想在某天之后添加一些其他的库,那么不要忘记在“环境变量”的“变量值”的末尾添加一个分号,然后键入路径分号后的新库。因为分号分隔了不同目录的路径。

希望这会对你有所帮助。