我有一个很好的JAR的一些自定义FindBugs探测器,我想与FindBugs Maven插件一起使用.有一种方法可以通过< pluginList>对插件执行此操作.配置参数,但只接受本地文件,URL或资源.
我发现这样做的唯一方法是以某种方式将我的JAR复制到本地文件(可能通过Dependency插件),然后配置FindBugs插件,如下所示:
但这不是很灵活.有没有办法使用Maven的依赖管理功能和FindBugs的插件?我想用这样的东西:
…但这只是覆盖核心FindBugs探测器.
最佳答案
我发现这是可能的,虽然通过一些黑客攻击. FindBugs只能处理本地JAR中的插件,所以你必须为它创建一个插件,但是有一种更灵活的方法可以通过Dependency插件来实现.
原文链接:https://www.f2er.com/java/437705.html< pluginList>参数可以采用本地文件路径,URL或资源(即来自类路径的东西).无论你给它什么,被寻址的文件将被复制到目标/< filename>,并传递给FindBugs本身.如果创建包含JAR文件的JAR文件,则可以将FindBugs传递给JAR文件.您可以通过Assembly插件在my-detector项目中实现这一点,并使用如下描述符:
要解决的唯一其他问题是FindBugs插件(至少版本2.3.1)使用过时版本的Plexus ResourceManager错误地提取my-detector.jar,所以你也必须“升级”它.现在您的自定义探测器将适用于此: