【发布时间】:2015-02-23 04:33:05
【问题描述】:
我正在尝试创建我的第一个 Maven 插件,为此我需要在我的 Mojos 中访问 MavenSession。我在很多地方发现下面的 sn-p 应该就足够了,但我总是以 mavenSession 对象为空,尽管在 Maven 日志(使用我的插件的 POM.xml)中似乎通过了 maven 会话, 或至少已填充 - 但未注入到 MavenSession 对象中。
谁能告诉我我错过了什么?
谢谢!
/**
* The Maven Session
*
* @required
* @readonly
* @parameter
* expression="${session}"
*/
private MavenSession mavenSession;
我还在插件的 POM.xml 中添加了以下内容(基于我在某处找到的评论):
<dependency>
<groupId>org.apache.maven</groupId>
<artifactId>maven-core</artifactId>
<version>3.2.5</version>
</dependency>
这来自日志:
[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
【问题讨论】:
-
你说的是(单元)测试时间还是运行时间?
-
@RobertScholte - 我猜你会称之为运行时 - 我正在尝试从不同/单独的 Maven 项目中调用此插件。
-
null在哪里?就在您的execute方法的开头? -
那么其他属性呢?注射的好吗?
-
你能展示你完整的pom吗?
标签: java maven maven-plugin