maven package 指定包名

本文介绍如何使用Maven自定义最终输出的包名。通过在配置文件中设置<finalName>标签,可以轻松地修改默认的包名,实现更灵活的项目管理和部署。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

默认情况下maven package 出的包名会是

<artifactId>weiboApp</artifactId> + <version>1.0.0</version> + <packaging>war</packaging>

即 weiboApp-1.0.0.war

如果想指定这个名称怎么办?

只要在 <builed> 标签里知道finalname即可

<finalName>weiboApp</finalName>

 

### Maven `package` 命令打过程详解 #### 1. 生命周期阶段触发 当执行 `mvn package` 命令时,实际上会依次触发多个生命周期阶段直到到达 `package` 阶段。这些阶段括但不限于 validate, compile, test 和 package。 #### 2. 编译源代码 在编译期间,Maven 将调用 Compiler Plugin 来编译位于 src/main/java 下面的 Java 源文件到 target/classes 目录中[^2]。 #### 3. 运行单元测试 随后,Test Phase 被激活并利用 Surefire Plugin 执行所有以 Test 结尾命约定的标准 JUnit 测试类。如果任何测试失败,则整个构建过程将会停止。 #### 4. 创建项目构件 一旦前面所有的步骤都成功完成,Package phase 开始工作。此时,默认情况下 Maven Jar Plugin 或其他指定插件会被用来创建最终的输出工件(Artifacts),通常是 .jar 文件形式。对于 Web 应用程序来说可能是 war 文件;而对于那些需要被打成可执行 jar 的场景则可能涉及到 Shade 或者 Assembly 插件来处理复杂的依赖关系和资源合并需求[^1]。 #### 5. 解析依赖项 在整个过程中,Maven 自动管理着项目的依赖树,并确保所需的所有外部库都被下载到了本地仓库内供后续使用。这一步骤尤其重要因为它能够解决不同版本之间的潜在冲突问题以及自动拉取间接依赖项。 ```xml <build> <plugins> <!-- Example configuration of the maven-assembly-plugin --> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-assembly-plugin</artifactId> <version>3.3.0</version> <configuration> <descriptorRefs> <descriptorRef>jar-with-dependencies</descriptorRef> </descriptorRefs> </configuration> <executions> <execution> <id>make-assembly</id> <phase>package</phase> <goals> <goal>single</goal> </goals> </execution> </executions> </plugin> </plugins> </build> ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值