有人没有得到 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/