编写Maven2网站插件时,获取网站资源列表的最佳方法是什么?
时间:2020-03-06 14:24:26 来源:igfitidea点击:
创建在默认生命周期中执行的插件时,很容易获得对项目及其资源的引用,但是在创建在站点生命周期中执行的插件时,我得到的是null而不是MavenProject对象。
有任何提示,技巧或者建议吗?
解决方案
事实证明,我遇到的问题与我将Project参数的声明传递到我的Mojo中有关。由于Maven构建中只有一个MavenProject实例,因此我们无法为参数指定表达式(并且实际上没有Java字符串可以转换为MavenProject对象),默认值必须为" $ { }"。
因此,要在任何阶段从Maven插件Mojo中访问MavenProject,请使用以下参数声明:
/** * Project instance, used to add new source directory to the build. * * @parameter expression="export.project" default-value="${project}" * @required * @readonly */ private MavenProject project;