创建和使用jar库

时间:2014-03-23 20:25:46

标签: java executable-jar

我已直接在C:\上创建了一个java文件Banana.java,如下所示:

package Bananas;

public class Banana{
   ...
}

然后我用这个命令编译它:

javac -d . Banana.java

它使用类文件创建目录:C:\ Bananas \ Banana.class 然后我把它放在一个jar文件中:

jar cvf Bananas.jar C:\Bananas\*.class

然后我把这个jar文件放在我的环境变量的Classpath的末尾,如下所示:; C:\ Bananas.jar

然后我创建另一个使用此jar文件的java文件Test.java:

import Bananas.Banana;

public class Test{
   ...
}

当我通过以下方式编译它时:

javac Test.java

它给了我错误:包香蕉不存在。 有人看到我的错误在哪里吗?

谢谢。

1 个答案:

答案 0 :(得分:0)

它找不到你的课的原因是因为你没有直接创建jar。您在jar中包含了实际的类 - 但不包含目录。当您导入Bananas.Banana时,编译器正在类路径中的某个子目录Banana中查找类Bananas。找不到此类,因为您的jar只包含Banana.class而没有任何子目录。您需要使用完整的子目录结构创建jar文件:

jar cvf Bananas.jar C:\Bananas

这将包括目录Bananas及其中的所有类。