我们目前正在研究在应用程序中使用OneJar(由于一些原因),但我们的应用程序使用了许多自定义的URLClassloader来加载应用程序扩展。当打包为“OneJar” Jar时,我们会遇到ClassNotFound异常。所涉及的类位于捆绑的Jar中,我们只是依赖类加载机制来解析父/子关系。也就是说,我们有一个通用的接口存储在捆绑的Jar中(应该在父类加载器上下文中),扩展实现了这个接口(允许我们调用扩展),并依赖于子类加载器能够使用父类加载器的资源查找功能。有没有人对此有任何经验或能够阐述如何解决这个问题。我对其他类似机制感兴趣(将我们的库Jar捆绑到单个Jar资源中,而不需要将所有内容解压缩并打包到单个文件中)。