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仓库。

相关推荐
陈果然DeepVersion1 小时前
Java大厂面试真题:Spring Boot+Kafka+AI智能客服场景全流程解析(十)
java·spring boot·ai·kafka·面试题·向量数据库·rag
但要及时清醒2 小时前
ArrayList和LinkedList
java·开发语言
一叶飘零_sweeeet2 小时前
从测试小白到高手:JUnit 5 核心注解 @BeforeEach 与 @AfterEach 的实战指南
java·junit
摇滚侠2 小时前
Spring Boot3零基础教程,Reactive-Stream 四大核心组件,笔记106
java·spring boot·笔记
Z3r4y2 小时前
【代码审计】RuoYi-3.0 三处安全问题分析
java·web安全·代码审计·ruoyi-3.0
与遨游于天地3 小时前
Spring解决循环依赖实际就是用了个递归
java·后端·spring
陈果然DeepVersion3 小时前
Java大厂面试真题:Spring Boot+微服务+AI智能客服三轮技术拷问实录(六)
java·spring boot·redis·微服务·面试题·rag·ai智能客服
BeingACoder3 小时前
【SAA】SpringAI Alibaba学习笔记(一):SSE与WS的区别以及如何注入多个AI模型
java·笔记·学习·saa·springai
DolphinScheduler社区3 小时前
真实迁移案例:从 Azkaban 到 DolphinScheduler 的选型与实践
java·大数据·开源·任务调度·azkaban·海豚调度·迁移案例