gpt4 book ai didi

maven - 目标“包”不会自动调用Maven阴影插件

转载 作者:行者123 更新时间:2023-12-03 21:36:16 24 4
gpt4 key购买 nike

我花了很多时间弄清楚如何调用Maven阴影插件来构建uber-jar(具有所有依赖项)。
我发现的大多数可谷歌搜索的信息(包括大量示例和Maven文档)表明,我要做的就是将插件包含在pom.xml中:

        <plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-shade-plugin</artifactId>
<version>2.4.3</version>
<executions>
<execution>
<phase>package</phase>
<goals>
<goal>shade</goal>
</goals>
</execution>
</executions>
</plugin>


然后“ mvn软件包”(或最终调用“软件包”的任何其他目标)将自动触发此插件。

但是,不管我尝试了什么-实际调用该插件的唯一方法似乎是:运行“ mvn软件包shade:shade”(这似乎违反了配置驱动的构建的目的)。无论是从Eclipse(STS版本:3.8.2.RELEASE)中还是从命令行(Apache Maven 3.3.9)运行Maven,结果都是相同的。

我有什么想念的吗?

UPD:已解决,请参阅GauravJ的回答。

最佳答案

我设法重现了您的问题。在pom.xml中,您必须定义如下的插件,

<build>
<pluginManagement>
<plugins>

<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-shade-plugin</artifactId>
<version>2.4.3</version>
<executions>
<execution>
<phase>package</phase>
<goals>
<goal>shade</goal>
</goals>
</execution>
</executions>
</plugin>
....

</plugins>
</pluginManagement>
</build>


代替

<build>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-shade-plugin</artifactId>
<version>2.4.3</version>
<executions>
<execution>
<phase>package</phase>
<goals>
<goal>shade</goal>
</goals>
</execution>
</executions>
</plugin>
</build>


这可能会解决您的问题。

关于maven - 目标“包”不会自动调用Maven阴影插件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42208526/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com