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 插件打包。
相关推荐
小宇宙Zz5 天前
Maven依赖冲突
java·服务器·maven
砚底藏山河5 天前
沪深A股:如何获取基金持股数据
java·python·数据分析·maven
一勺菠萝丶5 天前
Maven SNAPSHOT 父 POM 无法解析问题排查
java·maven
我登哥MVP5 天前
SpringCloud Alibaba 核心组件解析:服务链路追踪
java·spring boot·后端·spring·spring cloud·java-ee·maven
南部余额5 天前
Maven Archetype 项目模板
java·maven·项目·archetype
梦想的旅途25 天前
企业微信外部群自动化:一期交付应聚焦双向会话闭环
java·开发语言·机器人·自动化·maven·企业微信
vx-Biye_Design5 天前
springboot安阳地区研学旅游服务小程序-计算机毕业设计源码12785
java·vue.js·windows·spring boot·tomcat·maven·mybatis
Clang's Blog5 天前
Ubuntu(20.04/22.04/24.04)国内环境一键安装 Docker、JDK17 和 Maven
ubuntu·docker·maven
编程的一拳超人6 天前
Maven 国内高速镜像推荐(按速度排序)
java·maven
Orchestrator_me6 天前
Centos7安装maven 3.9.11
java·maven