我使用此cmd行创建了一个包含三个类的jar文件:
C:\...\db>jar cvf views.jar Line.java Points.java Shapes.java
我可以将jar文件添加到IDE,但我无法将其导入代码。
另一件事是jar文件中的类是xxx.java
,但是当查看另一个jar文件时,我注意到这些类是xxx.class
我不知道这是不是问题。
答案 0 :(得分:3)
Jar只是存档(压缩)
您显然正在将.java
文件压缩到jar
文件。
首先使用.java
javac
个文件
而不是在生成的jar
文件上发出.class
命令
答案 1 :(得分:2)
在创建JAR文件而不是源.java文件时,应该引用.class文件。
Here您可以在Oracle官方网站上找到有关JAR创建的教程。
答案 2 :(得分:0)
jar
是一个归档工具,它只是打包已编译的java文件。这意味着您应该首先编译这些.java文件,然后在jar中添加生成的.class文件。
答案 3 :(得分:0)
我通常希望.jar
文件包含类而不是.java
文件(或者至少源可以与类一起)
您可以将任何内容压缩到.jar
文件中(通过其他名称为.zip
- 请参阅here for more info)但我怀疑IDE期待.class
个文件。请注意,我的IDE(Intellij)允许我指定包含源的jar / zip,但这通常与包含已编译代码的jar一起。
答案 4 :(得分:0)
您在jar中打包java源文件而不是已编译的类文件。如果您希望在IDE中使用jar,则应该打包类文件。像
这样的东西C:\...\db>javac Line.java Points.java Shapes.java
然后
C:\...\db>jar cvf views.jar Line.class Points.class Shapes.class