我正在尝试扩展 maven 插件:hibernate3 (org.codehaus)。我想做的就是扩展他们的基础插件类并更改一些功能。该插件可以很好地编译和安装(使用maven-inherit-plugin [注意:maven-inherit-plugin 的开发已移至 GitHub ]),但是在运行时我遇到了麻烦。出于某种原因,maven 期望在与我的插件相同的包中存在一个名为 Component 的类;我不确定这是为什么——它似乎是由丛容器引起的。似乎我应该从父插件扩展 org.codehaus.mojo.hibernate3.exporter.Component,但是......好吧,作者已经决定该类是最终的。
显然扩展 maven 插件(至少 hibernate3)比它第一次出现更困难,我最好复制源代码并修改它。
但是,如果我能以某种方式告诉 plexus 不要使用我的配置对象,而是使用父插件中的那个,一切都会好起来的。可以这样做(使用委托配置对象类)吗?