将 java 类路径设置为包含 jar 文件的多个文件夹,并从命令行设置 运行

set java classpath to multiple folders that have jar files and run from command line

我正在尝试使用 Windows 命令行 运行 一个简单的 java class。我已设置 JAVA_HOME 并将其添加到系统路径变量中。

我在不同的文件夹中有多个 jar,我正在尝试使用以下命令使用 classpath 添加所有这些。但是,当使用“*”时,classpath 仅选择第一条路径,并且忽略其余路径,尽管我使用的是“;”特点。如果路径使用“/”分隔符,它将不起作用。 是否可以指定具有 jar 文件的多个文件夹的路径并从命令行编译

javac -verbose -classpath "C:\Program Files\lib\java\core\*; C:\Program Files\lib\java\core\locale\*; C:\Program Files\lib\java\modules\*; C:\Program Files\lib\java\modules\ext\*;" testClass.java

最终我想在 netbeans 项目属性的 ant 脚本中使用这个 class 路径设置来简化设置。

这是最终按预期工作的解决方案。当在我的特定场景的类路径中使用“*”字符时,它会跳过第一条路径后的所有内容。分别为每个路径使用双引号 ("),然后使用 ";" 作为分隔符是解决方案。

分号“;”前后有任何space也不行

javac -verbose -classpath "C:\Program Files\lib\java\core\*";"C:\Program Files\lib\java\core\locale\*";"C:\Program Files\lib\java\modules\*";"C:\Program Files\lib\java\modules\ext\*" testClass.java

如果您在不同的目录中有 jar,则需要设置 class 所有该目录的路径。

Windows

java -cp ./folder1/*;./folder2/*;./folder3/* com.xyz.MainClass

Linux ( ; 改为:)

java -cp ./folder1/*:./folder2/*:./folder3/* com.xyz.MainClass