我已经编写了两个胖jar来将EDI文件转换为JSON输出。我创建了两个胖罐,因为我必须处理两种类型的EDI。胖罐看起来像下面
EDI417Converter.jar
- Mapping.jar (Generated by Altova, and EDI mapping tool))
EDI418Converter.jar
- Mapping.jar (Generated by Altova, but supports a different type of EDI and the packag and class names are the same as the one above)
当我尝试使用这些胖jar将EDI转换为JSON时,EDI类型支持首先加载的jar将被转换而另一个失败。 (这很明显,因为java类加载器只加载一次相同的类)。
作为一种解决方法,我更改了其中一个Mapping.jars的包命名。但是这个解决方案是不可维护的,因为每次我为新的EDI类型生成一个新的Mapping.jar时,我都必须更改包命名。
我的问题是,有没有一种方法可以在一个项目中使用这两个胖罐而无需重命名包结构?