如何编译不同包中的 java 文件集,然后使用命令行构建 .jar 文件?

How to compile set of java files in different packages and then build .jar file using command line?

我在不同的包中有一组 .java 文件。例如,

src |- Main.java |- pkg1 |- pkg2 |- A.java |- B.java |- C.java |- pkg3 |- pkg4 |- D.java |- E.java

如何编译所有这些 .java 文件,然后在 Windows 平台中使用命令行构建 .jar 库?

你真的应该使用 IDE,它更容易也更有效率。可以做到:

javac Main.java pkg1\pkg2\A.java pkg1\pkg2\B.java pkg1\pkg2\C.java pkg3\pkg4\D.java pkg3\pkg4\E.java
jar -cf my.jar  *.class pkg1 pkg3

那将没有清单,因此无法执行。

要使其可执行,您需要选择 Main class 并使用文本编辑器创建名为 manifest.txt 的文件:

Manifest-Version: 1.0
Main-Class: Main

并用这个制作罐子:

 jar -cmf manifest.txt my.jar  *.class pkg1 pkg3

另一种选择是 Apache ANT. See their tutorial 开始。