Java 创建包含另一个Jar文件的Jar文件

Java 创建包含另一个Jar文件的Jar文件,java,android,jar,Java,Android,Jar,我创建了一个Android项目,它可以做一些非常简单的网络工作。这个项目是独立的,我已经成功地将其导出为jar文件,并将其导入到我所从事的其他项目中。导出此项目时,我仅导出用于该项目的类文件。(无系统文件:即清单等) 我想离开这个项目作为独立的,因为它是在其他项目中使用,并将在未来使用更多 但是,我们还有其他项目需要networkjar的特性和其他一些特性。我想做的是创建一个新项目,导入网络jar文件。为网络jar文件中的所有函数创建包装器,然后添加更多功能 之后,我想将这个项目打包为一个jar

我创建了一个Android项目,它可以做一些非常简单的网络工作。这个项目是独立的,我已经成功地将其导出为jar文件,并将其导入到我所从事的其他项目中。导出此项目时,我仅导出用于该项目的类文件。(无系统文件:即清单等)

我想离开这个项目作为独立的,因为它是在其他项目中使用,并将在未来使用更多

但是,我们还有其他项目需要networkjar的特性和其他一些特性。我想做的是创建一个新项目,导入网络jar文件。为网络jar文件中的所有函数创建包装器,然后添加更多功能

之后,我想将这个项目打包为一个jar文件,这样我就可以将它单独用于需要额外功能的项目

将这个项目作为一个jar是很重要的,因为这个组件可能会提供给其他人使用,并且需要轻松/简单的集成

这条缝对我来说应该很直。但是我得到了noClassDef错误并验证了错误

我甚至将该项目简化为一个函数,该函数从原始网络jar返回一个静态字符串,并传递该字符串,但仍然得到一个“无法找到从方法xxxx引用的方法xxxx”日志,然后是一个无法解析静态方法警告,然后是一个无ClassDefFoundError错误。这是日志

正确的方法是什么


谢谢

要使用嵌入式Jar的Jar文件必须定义一个自定义类加载器,如


如果您想使用单个jar文件,还可以选择OneJar、JarJar和ProGuard。

谢谢Dave!我最终使用了FatJar,现在我可以直接访问网络jar文件资源和新项目资源,这非常方便!非常感谢!