maven打包方法

想打包 Maven 项目,可以根据不同需求(普通 jar、可执行 jar、war 包等)选择不同方法。下面给一个完整的说明:


1. 基础前提

确保你已经:

  • 安装了 JDK(通常 8+)
  • 安装了 Maven
  • 在项目根目录有 pom.xml

可以在命令行中验证:

复制代码
mvn -v
java -version

2. 打包命令

2.1 普通 jar 包

go 复制代码
mvn clean package

说明:

  • clean:先清理之前的编译文件

  • package:编译项目并生成 jar/war 文件

  • 打包结果:

    • target/ 目录下生成 项目名-version.jar

2.2 可执行 jar(Spring Boot 项目)

如果是 Spring Boot,一般需要包含依赖,可以使用:

go 复制代码
mvn clean package spring-boot:repackage

或者:

复制代码
mvn clean install

说明:

  • install:会把 jar 安装到本地仓库,方便其他项目依赖

  • 打包后生成可直接执行的 jar:

    java -jar target/项目名-version.jar


2.3 war 包

如果项目是 Web 项目:

go 复制代码
mvn clean package
  • 在 pom.xml 中设置 <packaging>war</packaging>

  • 打包结果:

    • target/ 下生成 项目名-version.war
  • 可直接部署到 Tomcat 或其他容器


3. 常用参数

  • 指定 profile:
go 复制代码
mvn clean package -Pprod
  • 跳过测试:
go 复制代码
mvn clean package -DskipTests
  • 指定 Maven 本地仓库:
lua 复制代码
mvn clean package -Dmaven.repo.local=/path/to/repo

4. 注意事项

  1. 依赖冲突 :打包前最好 mvn dependency:tree 检查。
  2. 编码问题:打包报中文乱码可在 pom.xml 设置:
xml 复制代码
<properties>
    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
</properties>
  1. Spring Boot 项目 :不要手动修改 target/dependency,使用 Maven 插件打包。
相关推荐
蹉跎岁月新5 小时前
Jenkins创建一个maven-project
运维·jenkins·maven
MaCa .BaKa5 小时前
56-非遗手工艺品定制平台系统
java·vue.js·spring boot·mysql·maven·非遗手工制作平台系统·非遗制作
weixin_489690021 天前
【IDEA 2025.2.4】 Maven 仅能手动 Reload All Maven Projects 问题解决
java·maven·intellij-idea
MaCa .BaKa1 天前
55-宠物爱心救助领养系统-宠物救助领养系统
java·vue.js·tomcat·maven·springboot·宠物救助领养系统
摇滚侠1 天前
我把一个依赖安装到了本地仓库,但是IDEA 刷新 maven 提示远程私服仓库找不到,怎么解决
java·maven·intellij-idea
霸道流氓气质1 天前
在Qoder中指定JDK和Maven运行AI学习的SpringBoot项目的完整指南
java·人工智能·maven
小江的记录本2 天前
【JVM虚拟机】垃圾回收GC:垃圾收集器:CMS:核心原理、回收流程、优缺点、废弃原因(附《思维导图》+《面试高频考点清单》)
java·jvm·后端·python·spring·面试·maven
我是一只码蚁2 天前
记一次苍穹外卖项目 Maven 编译报错的排查与解决全过程
java·经验分享·笔记·后端·架构·maven
开开心心就好2 天前
180套模板的图片艺术拼接实用工具
linux·服务器·网络·spring·智能手机·maven·excel
ForgeAI码匠3 天前
Maven 多模块项目如何避免越写越乱?Forge Admin 的模块边界实践
java·人工智能·开源·maven