ree*_*eef 4 maven-2 maven-plugin
我刚发现Maven插件管理听起来很奇怪.
而在现场发电工作,我想为了有一个特定的functionnalty工作使用maven的网站插件的特定版本.假设我想使用此插件的2.0.1版本.
如果我使用我的POM的报告部分,以便使用以下命令生成我的项目的站点:
mvn site
Run Code Online (Sandbox Code Playgroud)
这很好用.我的意思是我使用的插件版本是2.0.1.以下是我的POM配置站点插件的摘录:
<reporting>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-site-plugin</artifactId>
<version>2.0.1</version>
</plugin>
</plugins>
</reporting>
Run Code Online (Sandbox Code Playgroud)
现在,如果我希望在构建生命周期的特定阶段生成我的站点,让我们说prepare-package(和目标阶段),我在以下部分添加以下部分:
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-site-plugin</artifactId>
<executions>
<execution>
<phase>prepare-package</phase>
<goals>
<goal>stage</goal>
</goals>
</execution>
</executions>
</plugin>
</plugins>
Run Code Online (Sandbox Code Playgroud)
在这里,我坚持使用来自Super POM的maven网站插件版本,即.2.0-β-7.即使我尝试添加配置指定我真的想使用版本2.0.1它仍然使用2.0-beta-7.我还尝试在该部分中添加该版本,因为报告部分中使用的配置也应该应用于构建部分.但这也不起作用.
也许我错过了一些东西,如果我错了就纠正我,但这看起来像个错误.Maven方面是否需要修复在构建过程中使用的插件版本?
谢谢!
如果在pom中定义了pluginManagement部分,则可以声明用于任何插件的版本,这将覆盖从超级POM继承的版本
例如:
<pluginManagement>
<plugins>
<plugin>
<artifactId>maven-site-plugin</artifactId>
<version>2.0.1</version>
</plugin>
</plugins>
</pluginManagement>
Run Code Online (Sandbox Code Playgroud)
您可以参考文档以获取有关配置pluginManagement的一些背景知识.
| 归档时间: |
|
| 查看次数: |
2869 次 |
| 最近记录: |