0

创建在默认生命周期中执行的插件时,很容易获得对项目及其资源的引用,但是在创建在站点生命周期中执行的插件时,我得到的是 null 而不是 MavenProject 对象。

有任何提示、提示或建议吗?

4

1 回答 1

1

事实证明,我遇到的问题与我将 Project 参数的声明传递到我的 Mojo 中有关。由于在 Maven 构建中只有一个 MavenProject 实例,因此您不能为参数指定表达式(实际上没有可以转换为 MavenProject 对象的 Java 字符串),默认值必须是“${project }”。

因此,要从 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;
于 2008-09-19T18:23:01.380 回答