我下载了一个用java编写的示例代码,该代码包含多个jar文件和java文件。我不是Java程序员,所以我很难编译代码。这是我的尝试:
javac -classpath lib/*.jar src/*.java
然而,这就是我得到的:
javac: invalid flag: lib/dom4j-1.6.1.jar
Usage: javac <options> <source files>
use -help for a list of possible options
我的方法有什么问题,如何编译代码? ALl jar文件位于lib文件夹中,java文件位于src文件夹中。
答案 0 :(得分:10)
您需要通过转发globbing
lib/*.jar
中的外卡来阻止外壳。
此外,您需要删除.jar
后缀...因为这是类路径通配符的工作方式;请参阅Oracle的"Setting the classpath"文档。
所以......
javac -classpath lib/\* src/*.java
使用IDE是另一种选择。但是,如果您只想编译并运行,那么下载和安装以及学习使用IDE是一种过度杀伤(IMO)。另一方面,对于使用IDE的Java程序员来说,理解如何从shell提示符编译和运行是好的...
答案 1 :(得分:0)
旧帖子,但以下详细信息认为有帮助, 您可以通过用;分隔来指定jar文件。在Windows中:在Unix中
例如:(windows)
javac -cp first.jar;second.jar;third.jar YourClass.java
(unix)
javac -cp first.jar:second.jar:third.jar YourClass.java
来源:https://gullele.com/pass-all-the-jars-in-classpath-when-compiling-java/