我正在开发一个 Maven 插件。
当maven实例化mojo类时,注释为@Parameter的字段将由maven“依赖注入(inject)”,因为子节点是在project/build/plugins/plugin/executions/execution标记内定义的。
像这样:
@Parameter(defaultValue = "${basedir}/src", alias = "src")
private String sourcePath;
将被填充
<configuration>
<src>${basedir}/whatever</src>
</configuration>
.
有没有办法通过一些java调用来获取配置? 我知道我可以使用
public Xpp3Dom org.apache.maven.plugin.MojoExecution.getConfiguration()
要检索该配置,问题是在这种情况下属性未解析,因此我得到 sourcePath 的“${basedir}/whatever”,属性的 ${} 未解析。我需要解决它们,无论它们是什么。
有没有办法在运行时获取解析值?
谢谢
最佳答案
用以下方式注释你的魔力:
@Mojo(name = "mymojoid", defaultPhase = LifecyclePhase.PACKAGE, requiresDependencyResolution = ResolutionScope.COMPILE_PLUS_RUNTIME)
public class MyMojo extends AbstractMojo{}
然后这些值将自动解析
关于java - Maven MOJO : Get execution configuration in runtime,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24363663/