作为协作项目的一部分,我获得了8个罐子,可以访问API。遗憾的是,我无法访问这些罐子的来源。
我可以在构建标准Java可执行文件时包含所有jar,没问题。
另一方面,在Android上,dexing会导致问题。如果我添加所有jar(或某个子集),我会在构建时获得java.util.zip.ZipException: duplicate entry: org/josql/Query.class
(或类似错误)。我的理解是,有几个库正在导出相同的类。
如果我错过了几个罐子,它构建得很好,但我显然在运行时遇到Could not find class
或java.lang.NoClassDefFoundError
错误。
有什么方法可以包含我所有的罐子但是防止重复的类被定义。我在gradle中查看了configurations { all*.exclude group: '', module: '' }
选项,但我似乎无法取得进展。
还有其他方法可以解决这个问题吗?注意:我可能不需要所有的jar用于我正在调用的功能。但我无法弄清楚我可能需要哪些。