当前位置: 首页 > news >正文

maven常用的命令

目录

1. 基础构建与清理

2. 依赖管理

3. 生命周期与阶段

4. 测试相关

5. 项目信息与辅助

6. 其他实用命令

小贴士

以下是 Maven 常用命令的整理,涵盖项目构建、依赖管理、测试、打包等场景,适用于日常开发和部署:

1. 基础构建与清理

  • mvn clean
    清理项目,删除 target 目录(编译、打包生成的文件都会存放在这里)。
  • mvn compile
    编译项目主代码(src/main/java),编译结果存放在 target/classes
  • mvn test-compile
    编译测试代码(src/test/java),结果存放在 target/test-classes
  • mvn test
    运行测试用例(需先编译主代码和测试代码),默认执行 src/test/java 下的单元测试,结果会在 target/surefire-reports 生成报告。
  • mvn package
    打包项目(在 test 之后执行),根据 pom.xml 中的 packaging 配置生成对应的包(如 jarwarpom 等),输出到 target 目录。
  • mvn install
    将项目打包后安装到 本地 Maven 仓库(默认路径 ~/.m2/repository),供本地其他项目依赖使用。
  • mvn deploy
    将项目打包后部署到 远程仓库(需在 pom.xml 中配置远程仓库地址),供团队其他成员或部署环境使用。

2. 依赖管理

  • mvn dependency:tree
    查看项目依赖树,显示所有依赖的层级关系(可用于排查依赖冲突)。
  • mvn dependency:analyze
    分析依赖:检测未使用的依赖(Unused declared dependencies)和未声明但被使用的依赖(Used undeclared dependencies)。
  • mvn dependency:purge-local-repository
    清理本地仓库中项目相关的依赖(强制重新下载,解决本地缓存损坏问题)。
  • mvn -U clean install
    强制更新依赖(-U 表示强制刷新远程仓库的快照版本和发布版本,忽略本地缓存)。

3. 生命周期与阶段

Maven 的生命周期分为 clean(清理)、default(默认)、site(站点),每个生命周期包含多个阶段,按顺序执行。例如:
mvn clean package 会先执行 clean 生命周期,再执行 default 生命周期到 package 阶段(包含 compiletest 等前置阶段)。

常用阶段(按执行顺序):
validatecompiletestpackageverifyinstalldeploy

4. 测试相关

  • mvn test -Dtest=TestClassName
    只运行指定的测试类(例如 mvn test -Dtest=UserServiceTest)。
  • mvn test -Dtest=TestClassName#methodName
    只运行测试类中的某个方法(例如 mvn test -Dtest=UserServiceTest#testLogin)。
  • mvn test -DskipTests
    编译测试代码,但不运行测试用例(适用于快速打包,跳过测试耗时)。
  • mvn test -Dmaven.test.skip=true
    既不编译测试代码,也不运行测试用例(比 -DskipTests 更彻底)。

5. 项目信息与辅助

  • mvn help:effective-pom
    查看项目的“有效 POM”(合并了父 POM、默认配置后的最终 POM),用于排查配置继承问题。
  • mvn help:system
    打印系统属性和环境变量(可用于检查 Maven 环境配置)。
  • mvn archetype:generate
    通过 archetype(骨架)快速创建新项目(如 maven-archetype-quickstart 生成基础 Java 项目,maven-archetype-webapp 生成 Web 项目)。
  • mvn site
    生成项目站点文档(需配置 site 插件),包含测试报告、依赖信息等,输出到 target/site

6. 其他实用命令

  • mvn clean package -Dmaven.test.skip=true
    清理后打包,且跳过测试(常用于生产环境打包)。
  • mvn org.apache.maven.plugins:maven-help-plugin:3.2.0:evaluate -Dexpression=project.version
    查看当前项目的版本号(替换 project.version 可查看其他属性,如 project.groupId)。
  • mvn versions:set -DnewVersion=1.0.1
    批量修改项目版本号(需 versions-maven-plugin 插件,修改后可执行 mvn versions:commit 确认,或 versions-maven-plugin:revert 回滚)。

小贴士

  • 命令可以组合使用,例如 mvn clean install -U -DskipTests(强制更新依赖 + 清理 + 安装 + 跳过测试)。
  • 复杂命令可在 IDE(如 IDEA、Eclipse)的 Maven 面板中可视化操作,避免手动输入。
  • 若命令执行缓慢,可配置国内镜像仓库(如阿里云)加速依赖下载。
http://www.dtcms.com/a/586396.html

相关文章:

  • 动态商务网站开发与管理合肥网站建设工作室
  • 设计的网站都有哪些内容新榜数据平台
  • 扶绥县住房和城乡建设局网站品牌网站建设精湛磐石网络
  • MCU 的SPI 关键部分配置注意事项(SPI多机通信时)
  • 付网站建设费如果做账wordpress修改版面
  • 网站建设的实训心得 500字新城建站
  • Linux网络-Socket 编程 UDP
  • Rust编程进阶 - 如何基于生成器设计一套协程(Coroutine)的方案, 从而方便编写大规模高性能异步程序
  • LangChain 中 ChatPromptTemplate 的几种使用方式
  • 怎么创建企业网站同源大厦 网站建设
  • 3网合一网站天眼企业查询系统官网
  • 网站建设人工智能开发怎样建个人网页免费
  • 1.2.3AOP的底层原理
  • Android 屏幕旋转流程
  • 简述电子商务网站的建站流程佛山app开发公司
  • 精准突破 0.5mm 透明玻璃测量瓶颈 —— 泓川科技激光位移传感器的技术革新与成本优势
  • C++笔记-24-文件读写操作
  • 做网站需要会哪些计算机语言net源码的网站建设步骤
  • 做网站一般都是织梦网站 展示板
  • 设计配色推荐的网站广州深圳外贸公司
  • 怎样做建网站做淘客无锡定制网站制作公司
  • 北京网站建设 奥美通全网营销个人网页设计html代码实现
  • 网站开发多少人下载百度app到手机上
  • 网站进入沙盒期有哪些竞价网站
  • 朝阳市网站制作随州有哪些网站建设的公司
  • 雪球网 MD5_1038 逆向算法分析
  • 车辆类型特征智能识别
  • [法兰西公学院] Esterel A到Z (Gérard Berry 2018)
  • 液压矫平机:给金属板材“舒筋活血”的科学
  • 如何用图片文字做网站地图定位网站开发