Maven的常用命令管理项目的生命周期

一、打包区别

  • mvn clean: 清除编译产生的target文件夹内容,可以配合相应命令一起使用,如mvn clean package, mvn clean test
  • mvn package: 打包到本项目,一般在项目target目录下
  • mvn install: 打包到本地仓库,如果没设置Maven本地仓库,一般在用户/.m2目录下。其实执行install之前先执行了打包,然后对项目进 行安装到本地仓库
  • mvn deploy: 打包上传到远程仓库,如:私服nexus等,需要配置pom文件。
  • **mvn test:**测试命令,先将src/main/java以及src/test/java中的类都进行编译,然后再执行src/test/java/下所有 junit的测试用例

二、打包过程

  • mvn clean package 依次执行:clean、resources、compile、testResources、testCompile、test、jar(打包)。
  • mvn clean install 依次执行:clean、resources、compile、testResources、testCompile、test、jar(打包)、install。
  • mvn clean deploy 依次执行:clean、resources、compile、testResources、testCompile、test、jar(打包)、install、deploy。

由上面分析主要区别如下:

package命令:完成项目编译、单元测试、打包功能,但打包文件未部署到本地Maven仓库和远程Maven仓库。

install命令:完成项目编译、单元测试、打包功能,同时把打包文件部署到本地Maven仓库,但未部署到远程Maven仓库。

deploy命令:完成项目编译、单元测试、打包功能,同时把打包文件部署到本地Maven仓库和远程Maven仓库。

相关推荐
weixin_408099673 分钟前
【实战教程】懒人精灵如何实现 OCR 文字识别?接口调用完整指南(附可运行示例)
java·前端·人工智能·后端·ocr·api·懒人精灵
花千树-01019 分钟前
Java Agent 集成 MCP 工具协议:让 AI 真正驱动企业系统
java·ai·langchain·ai agent·mcp·harness·j-langchain
橘子编程25 分钟前
GoF 23 种设计模式完整知识总结与使用教程
java·c语言·开发语言·python·设计模式
君以思为故29 分钟前
认识Linux -- 线程同步与互斥
java·开发语言
被摘下的星星34 分钟前
Java接口需要注意的细节
java·开发语言
培风图南以星河揽胜38 分钟前
幻想简历!博主本人期望的 AI Agent 全栈简历:Java + Python + Vue3 跨语言实战,代码已开源!
java·人工智能·python
鬼先生_sir42 分钟前
Dubbo:从入门到精通
java·dubbo·springcloud
艾莉丝努力练剑1 小时前
【Linux线程】Linux系统多线程(四):线程ID及进程地址空间布局,线程封装
java·linux·运维·服务器·c语言·c++·学习
有味道的男人1 小时前
电商效率翻倍:用 Open Claw 对接 1688 接口,快速实现图片选品 + 货源监控
java·开发语言·数据库
cheems95271 小时前
[SpringMVC] Spring MVC 留言板开发实战
java·spring·mvc