Java使用外部jar创建独立jar

Java使用外部jar创建独立jar,java,jar,external,Java,Jar,External,我为我的应用程序开发了两个.jar(LOG.jar和STRING.jar) 我使用这些jar,在.java中导入: import LOG.CLog import STRING.CString 没关系。但是.jar在我的项目中不断增加,所以我只想创建一个.jar,其中包括所有开发的.jar 因此,我尝试创建了唯一的一个.jar(名为TOOLS.jar): 但是,如果我在应用程序编译(Eclipse中的Java构建路径)中只放入TOOLS.jar文件,则在导入时会出现错误: import TOOL

我为我的应用程序开发了两个.jar(LOG.jar和STRING.jar)


我使用这些jar,在.java中导入:

import LOG.CLog
import STRING.CString
没关系。但是.jar在我的项目中不断增加,所以我只想创建一个.jar,其中包括所有开发的.jar

因此,我尝试创建了唯一的一个.jar(名为TOOLS.jar):

但是,如果我在应用程序编译(Eclipse中的Java构建路径)中只放入TOOLS.jar文件,则在导入时会出现错误:

import TOOLS.LOG.CLog
无法解析此导入

在Eclipse的“引用库”中,我看到了包含STRING.jar和LOG.jar的PXTOOLS包,但我没有看到STRING和LOG包


如何修复它?

您不能在jar文件中包含jar。如果您只想交付一个jar,请查看类似的工具。他们可以为你打包一个工作罐


我使用这些jar,并在.java中导入 :

import LOG.CLog import STRING.CString

通过使用包名称限定类来导入类;不是直接从JAR文件。我希望您的包名为
LOG
,这里的类名为
CLog
(尽管使用大写的包名是一种不好的命名约定)


其次,不建议将JAR文件合并为一个JAR文件。最好把它们分开。如果确实要合并,则必须确保先提取所有类文件,然后合并。

我使用这些jar,并在.java中导入:

import LOG.CLog
import STRING.CString
import LOG.CLog import STRING.CString

通过使用包名称限定类来导入类;不是直接从JAR文件。我希望您的包名为LOG,而类在这里是阻塞的(尽管使用大写的包名是一种不好的命名约定)

其次,不建议将JAR文件合并为一个JAR文件。最好把它们分开。如果确实要合并,则必须确保先提取所有类文件,然后合并


是的,你可以这样做。看看这里-

谢谢,这回答了我关于jar组织的问题。所以,我会让我的应用程序调用我开发的每个.jar!谢谢