我正在尝试创建我的第一个Maven插件,为此我需要在我的Mojos中访问MavenSession.我在很多地方发现下面的代码片段应该足够了,但是我总是将mavenSession对象作为null,尽管在Maven日志中(使用我的插件的POM.xml),似乎maven会话被传递,或者至少填充 - 但不会注入MavenSession对象.
谁能告诉我我错过了什么?
谢谢!
/**
* The Maven Session
*
* @required
* @readonly
* @parameter
* expression="${session}"
*/
private MavenSession mavenSession;
Run Code Online (Sandbox Code Playgroud)
我还将以下内容添加到插件的POM.xml中(基于我在某处发现的注释):
<dependency>
<groupId>org.apache.maven</groupId>
<artifactId>maven-core</artifactId>
<version>3.2.5</version>
</dependency>
Run Code Online (Sandbox Code Playgroud)
这来自日志:
[DEBUG] Configuring mojo 'com.ofernicus.helpers:resource-helper:1.0-SNAPSHOT:iterate' with basic configurator -->
[DEBUG] (f) session = org.apache.maven.execution.MavenSession@1a785a79
[DEBUG] (f) mavenProject = MavenProject: com.ofernicus.consumers:resource-helper-consumer:1.0-SNAPSHOT @ C:\Users\oferlan\workspaces\Maven\PluginConsumer\resource-helper-consumer\pom.xml
Run Code Online (Sandbox Code Playgroud)