不使用parent pom时,如何将Micronaut项目打包为单一可执行Jar
如何在不继承Micronaut父POM的情况下生成可执行Shaded Jar
当你仅通过dependencyManagement导入Micronaut父POM时,父POM中默认配置的Micronaut Maven插件不会自动生效,这就是执行mvn package仅生成普通项目Jar的原因。要触发插件生成包含所有依赖的可执行Shaded Jar,需要手动在POM的build段中声明并配置插件:
步骤1:添加Micronaut Maven插件到POM
在你的pom.xml中添加以下插件配置:
<build> <plugins> <plugin> <groupId>io.micronaut.build</groupId> <artifactId>micronaut-maven-plugin</artifactId> <executions> <execution> <id>package</id> <goals> <goal>package</goal> </goals> </execution> </executions> </plugin> </plugins> </build>
关键说明
- 无需手动指定插件版本:因为你已经通过
dependencyManagement导入了micronaut-parent,插件的版本会自动从父POM的版本管理中继承。 - 绑定
package生命周期:通过execution配置将插件的package目标绑定到Maven的package阶段,这样执行mvn package时会自动触发插件生成包含所有依赖的可执行Jar。
配置完成后重新运行mvn package,就能在target目录下得到命名格式为{artifactId}-{version}-all.jar的可执行Shaded Jar文件。
内容的提问来源于stack exchange,提问作者Ste
相关产品推荐
相关产品推荐

