生成maven文档时出错

时间:2010-07-28 15:36:39

标签: java maven-2

当我运行mvn site时,我收到错误:

java.lang.NullPointerException
        at org.codehaus.mojo.versions.ordering.MavenVersionComparator.innerGetSegmentCount(MavenVersionComparator.java:5
1)
        at org.codehaus.mojo.versions.ordering.AbstractVersionComparator.getSegmentCount(AbstractVersionComparator.java:
27)

这似乎是一个Maven错误,根据the JIRA ticket已在版本1.2中解决。我假设这意味着特定插件的版本1.2(可能是网站插件)。

是否有人知道此修补程序是否已发布,如果有,我如何强制Maven使用包含此修复程序的插件版本?

更新

如下所述,我添加了

<plugin>
  <groupId>org.codehaus.mojo</groupId>
  <artifactId>versions-maven-plugin</artifactId>
  <version>1.2</version>                
</plugin>

到我的pom.xml。但我现在得到以下错误:

java.lang.NullPointerException
        at org.codehaus.mojo.versions.PluginUpdatesDetails.isDependencyUpdateAvailable(PluginUpdatesDetails.java:68)
        at org.codehaus.mojo.versions.PluginUpdatesRenderer.renderSummaryTotalsTable(PluginUpdatesRenderer.java:132)
        at org.codehaus.mojo.versions.PluginUpdatesRenderer.renderBody(PluginUpdatesRenderer.java:71)

谢谢, 唐

1 个答案:

答案 0 :(得分:1)

这是Codehaus Versions Maven Plugin

这是包含您需要的版本的配置:

<reporting>
  <plugins>
    <plugin>
      <groupId>org.codehaus.mojo</groupId>
      <artifactId>versions-maven-plugin</artifactId>
      <version>1.2</version>
      <reportSets>
      ...
      </reportSets>
    </plugin>
  </plugins>
</reporting>

编辑:

对于新错误,this source code line(68)表明在没有版本的情况下引用了依赖项。尝试查找没有<version>的插件。

63      public boolean isDependencyUpdateAvailable()
64      {
65          for ( Iterator i = dependencyVersions.values().iterator(); i.hasNext(); )
66          {
67              ArtifactVersions versions = (ArtifactVersions) i.next();
68              if ( versions.getAllUpdates( UpdateScope.ANY, includeSnapshots ).length > 0 )
69              {
70                  return true;
71              }
72          }
73          return false;
74      }