我使用这个 cmd 行创建了一个包含三个类的 jar 文件:
C:\...\db>jar cvf views.jar Line.java Points.java Shapes.java
我可以将 jar 文件添加到 IDE,但无法将其导入代码。
另一件事是 jar 文件中的类是xxx.java
,但是当查看另一个 jar 文件时,我注意到这些类是xxx.class
我不知道这是否是问题所在。
在创建 JAR 文件而不是源 .java 文件时,您应该参考 .class 文件。
在这里,您可以找到有关从 Oracle 官方网站创建 JAR 的教程。
jar
是一个归档工具,它只是打包你编译的java文件。这意味着您应该首先编译这些 .java 文件,然后将生成的 .class 文件添加到 jar 中。
我通常希望.jar
文件包含类而不是.java
文件(或者至少源可以在类旁边)
您可以将任何内容压缩到.jar
文件中(它是.zip
另一个名称 - 请参阅此处了解更多信息),但我怀疑 IDE 需要.class
文件。请注意,我的 IDE (Intellij) 允许我指定包含源的 jar/zip,但这通常与包含已编译代码的 jar 并排。
您在 jar 中打包 java 源文件而不是已编译的类文件。如果你想让你的 jar 在 IDE 中使用,你应该打包类文件。就像是
C:\...\db>javac Line.java Points.java Shapes.java
进而
C:\...\db>jar cvf views.jar Line.class Points.class Shapes.class