Maven 的站点生成不起作用

标签 maven maven-site-plugin

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

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

未生成报告或 HTML

最佳答案

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

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

正如@andri 所说:

The default plugin versions are inherited from the Super POM, and you can check them with mvn help:effective-pom.



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

然而,@andri 的回答并没有像 super POM 那样报告正确的结构,而@Brian Fox 的回答却报告了正确的结构。结合两个答案和在 Maven 存储库中找到的信息,我将以下内容添加到我的 pom.xml
<build>
    <pluginManagement>
        <plugins>
            <plugin>
                <artifactId>maven-site-plugin</artifactId>
                <version>3.0</version>
            </plugin>
        </plugins>
    </pluginManagement>
</build>

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

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

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

关于Maven 的站点生成不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5520683/

相关文章:

产品构建中的 Maven Tycho : How to Exclude eclipsec. exe?

maven - 如何在 Docker 容器中自动重建 Java Webapp

java - 将多模块 Maven 项目导入 Eclipse (STS 2.5.2) 时遇到问题

java - 如何在eclipse自动导入中使用Maven依赖项

maven - 如何将 github markdown 文件包含到 maven 站点中

java - org.springframework.beans.factory.UnsatisfiedDependencyException : Unsatisfied dependency expressed through method 'anyMethodName' parameter 0:

pdf - 如何使用Maven PDF插件从Surefire Report生成PDF?

maven-2 - maven 站点插件未在多模块项目中部署子项目或生成 index.html

java - 如果创建站点,如何避免多次调用 javadoc?

java - 如何在 Maven 插件站点的文档中包含目标和参数