各ビルド セッションの期間を計算する Maven 拡張機能を作成しようとしています。ここに私の拡張子があります:
@Parameter( defaultValue = "${project}", readonly = true, required = true )
private MavenProject project;
@Component(role = AbstractMavenLifecycleParticipant.class)
public class BuildTimeLogger extends AbstractMavenLifecycleParticipant {
public void afterSessionStart(MavenSession session) throws MavenExecutionException {
System.out.println("${project}: "+project);
System.out.println("Top level project:"+session.getTopLevelProject());
System.out.println("session.getcurrentproject():"+session.getCurrentProject()); }
}
上記のすべての print ステートメントが print になる理由がわかりませんnull
。セッション オブジェクトを適切に使用していますか? 私の理解では、Maven はビルド中のプロジェクトのすべてのセッションの詳細を送信することになっています。さまざまなプロジェクトでこれを試しましたが、うまくいかないようです。