【问题标题】:Maven's site generation is not workingMaven 的站点生成不起作用
【发布时间】:2011-07-28 02:24:51
【问题描述】:

有人没有得到 mvn 站点输出吗?我在我的 Macbook pro 上获得了站点输出,并且我也部署了该站点。但是今晚没有任何效果:

[INFO] --- maven-site-plugin:2.0.1:site (default-cli) @ svs-utility ---

没有生成报告或 HTML

【问题讨论】:

    标签: maven maven-site-plugin


    【解决方案1】:

    您使用的是 maven 3 吗?如果是这样,您需要使用站点插件的3.x version

    【讨论】:

      【解决方案2】:

      我认为根据 Raghuram 的建议,您已经想通了,但是,我今天看到了这个问题,并且遇到了同样的问题。我正在学习 Maven,我想在这里记录我的步骤,因为它可能对其他人有用。我正在运行 Maven 3.0.1,它使用的插件版本为 2.0.1,但它不起作用。

      我在 stackoverflow 上发现了另一个问题,解释了how to upgrade a Maven plugin

      正如@andri 所说:

      默认插件版本是 继承自 Super POM,而你 可以用 mvn 检查它们 帮助:有效的pom。

      我检查了一下,它确实使用了 2.0.1 - 我在 http://search.maven.org/ 上搜索了最新版本的站点插件,在撰写本文时是 3.0-beta-3(更新 3.0 是出,我已经更新了下面的代码)。

      但是,@andri 的答案没有像超级 POM 那样报告正确的结构,而@Brian Fox 的答案却可以。结合这两个答案和在 Maven 存储库中找到的信息,我将以下内容添加到我的 pom.xml

      <build>
          <pluginManagement>
              <plugins>
                  <plugin>
                      <artifactId>maven-site-plugin</artifactId>
                      <version>3.0</version>
                  </plugin>
              </plugins>
          </pluginManagement>
      </build>
      

      有了这个改变,“mvn 网站”现在可以工作了。

      现在有人可能会问,为什么 Maven 3 附带了一个不起作用的插件。事实证明,Maven 开发人员 Brian Fox 决定lock down plugins to version 2。一般来说,这对于稳定性来说似乎是一个好主意,但是由于不尊重向后兼容性,在这种特定情况下它变成了一个非常糟糕的主意。超级 pom 中的插件应该针对其打包的版本开箱即用。要么提供向后兼容性,要么更新到新版本。

      也许稍后会修复,同时上述解决方法有效。将插件的版本锁定到特定项目也是一个好主意。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2020-07-15
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2011-03-20
        • 1970-01-01
        相关资源
        最近更新 更多