我认为问题源于将依赖项打包到jar中。快速浏览一下代码,看起来插件处理器会覆盖其处理的每组插件的dat文件。我的猜测是,在打包过程中,将处理您的自定义插件并将其写入dat文件,然后在处理log4j依赖项以将其包含在包中时将其覆盖。可能有更好的解决方案,但是我不建议您执行以下操作之一:
不要将依赖项打包到jar中。只需打包您的项目,然后在执行时在类路径中包括依赖项。即使您希望将所有内容打包在一个便携式jar中,执行此操作也可以让您至少确认您的插件是否被覆盖,或者是否存在其他问题。
为您的自定义插件创建一个单独的项目,将其与主项目分开打包,然后将生成的jar作为依赖项。与选项1一样,请确保在此软件包中不包括log4j jar。一旦创建了自定义插件jar,就可以将其与其他依赖项一起打包在主jar中,由于自定义插件jar将具有自己的插件dat文件,因此可以正常工作。
祝好运!



