【发布时间】:2015-08-19 07:08:36
【问题描述】:
您好,我是 Maven 新手,我想知道如何在不将其目标附加到特定阶段的情况下使用插件。因此,例如我想使用shade 插件来创建 uber-jar(fat jar)。
目标概览
The Shade Plugin has a single goal:
shade:shade 绑定到包阶段,用于创建一个 带阴影的罐子。
所以插件只有一个目标,叫做shade。
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-shade-plugin</artifactId>
<version>2.3</version>
<executions>
<execution>
<id>shade</id>
<phase>package</phase>
<goals>
<goal>shade</goal>
</goals>
</execution>
</executions>
</plugin>
所以我说“嘿 Maven”,我想将 shade 的插件目标 shade 附加到您的 package 生命周期中。好的,但是如果我删除执行配置怎么办。那么会发生什么,Maven 可以理解在哪里放置阴影目标?每个插件是否都将其目标从其创建者阶段预定义?又怎么能看懂是哪个阶段呢?
上述文档描述说目标绑定到打包阶段。这是否意味着我的执行配置是多余的?
【问题讨论】:
标签: java maven jar maven-shade-plugin