前言:
我想这根本不是 Datanucleus 特定的,而是 Eclipse Maven 插件的功能。所有你尝试过的,显然 如果在命令行上运行(Linux)或 Cygwin[1](Windows)。这里的问题是 Eclipse m2 插件需要更多信息才能正常工作并发挥作用,这就是问题所在,这就是你问的原因。
可能的解决方案:
就像在 cmets 中已经指出的那样,每个细节都可以从[2] M2E 站点的给定链接中找到,并且要领出现在对同一问题 [3] 的一个答案中。我从其中一个答案中获取了这个 sn-p:
<action>
<execute />
</action>
这些行应该没问题,添加到项目pom.xml 的<plugin-executions> 元素内的最后一个元素内。我不是魔术师,我只能使用谷歌,所以如果没有给出有问题的代码/pom 内容,我建议你按照 Datanucleus 自己的说明[4] 并有类似的东西:
<plugins>
<plugin>
<groupId>org.datanucleus</groupId>
<artifactId>maven-datanucleus-plugin</artifactId>
<version>3.1.0-m3</version>
<configuration>
<log4jConfiguration>${basedir}/log4j.properties</log4jConfiguration>
<verbose>true</verbose>
</configuration>
<executions>
<execution>
<phase>process-classes</phase>
<goals>
<goal>enhance</goal>
</goals>
</execution>
</executions>
</plugin>
</plugins>
..好吧,那里只有<executions>,但把它放在那里。
旁注:
有趣的是,在使用谷歌搜索问题时,这个问题已经被我投票赞成,我选择的答案不同,看起来像这样:
<build>
<pluginManagement>
<plugins>
<plugin> ... </plugin>
<plugin> ... </plugin>
....
</plugins>
</pluginManagement>
</build>
.. 将 <pluginmanagement> 部分添加到 xml 中的技巧。我只记得从 SVN 获取了我的项目的新副本,之后我就不再使用那个技巧了。也许这个问题是老问题,或者我公司里有人犯了这个把戏。无论如何,也值得测试。
问题答案:
不是,不是直接使用插件,而是调整 pom.xml 文件。
我的来源:
[1] http://cygwin.com - 在 Windows 上运行 Linux 命令。
[2] http://wiki.eclipse.org/M2E_plugin_execution_not_covered - 建议在 cmets
[3] How to solve "Plugin execution not covered by lifecycle configuration" for Spring Data Maven Builds - 包括引用行