plexus注释是否可以在maven插件中运行?

时间:2012-02-16 10:13:57

标签: java maven dependency-injection plexus

我正在开发一个自定义maven插件,我正在尝试使用Plexus注释进行依赖注入,如Sonotype blog所示。

我的mojo中定义了一个字段:

/**
 */
@Requirement(hint = "rhino")
private RhinoRunner rhinoRunner;

使用@Component注释定义的类:

/**
 */
@Component(role = RhinoRunner.class, hint = "rhino")
public class RhinoRunnerImpl implements RhinoRunner {

然后我将配置添加到components.xml。当我使用插件时,rhinoRunner字段为空。如果我更改为在依赖项上使用旧的javadoc标记,如下所示,它可以正常工作:

/**
 * @component
 */
private RhinoRunner rhinoRunner;

是否可以使Java5注释有效?

1 个答案:

答案 0 :(得分:0)

插件注释与plexus注释不同(尽管插件注释恰好使用相同的机制来满足要求)。

您应该继续在Mojo中使用插件注释,但可以在纯组件中使用其他注释(在插件或任何支持库中)。