2012-01-03 33 views
5
[WARNING] 'reporting.plugins.plugin.version' for org.apache.maven.plugins:maven-clover-plugin is missing. @ com... 

我正在重建一个旧的Maven项目。部分/大部分Maven插件依赖项已经配置为没有版本。除了警告之外,这有什么后果呢? Maven会试图找到最新版本,并增加编译时间?忽略Maven插件版本的后果是什么?

回答

6

Maven会试图找到最新版本,并增加编译时间?

是的,当省略版本时,maven会尝试查找并使用最新版本。这实际上是一个糟糕的设计选择,但不是因为构建时间(我认为它缓存插件并且只是偶尔更新一次)。

这里真正的问题是,你永远不会知道插件的哪个版本被使用,并且插件将来的行为是否相同。这使得构建不可重复。

例如,如果某个插件更改某些选项的默认值,则完全相同的源具有完全相同的pom.xml将产生不同的结果。

maven的开发人员正试图通过首先警告您明确指定插件版本来解决此设计缺陷。毕竟,使用过时的插件比使用全新插件更安全,而不是突然断开构建。

+0

谢谢!这正是我所害怕的。 – Kimble 2012-01-03 12:08:25