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

相关推荐
从琳开始98913 小时前
网络原理入门(二)------OSI七层模型?TCP/IP五层(四层)模型原来是这样的
java·网络·tcp/ip·java-ee·php
文丑颜不良啊14 小时前
LeetCode1861~1880题目解析
java·leetcode
Flynn Liang14 小时前
AgentScope Java 深度解析:ReActAgent、HarnessAgent 与多智能体编排——JVM 上的自治 Agent 底座
java·大模型·架构设计·ai agent·spring ai·langchain4j·agentscope
Flynn Liang14 小时前
上线后怎么排查 AI 调用?Spring AI Observability:token/延迟/成本埋点与全链路追踪
java·人工智能·spring·监控·可观测性·observability·springai
文丑颜不良啊14 小时前
LeetCode1921~1940题目解析
java·leetcode
Tt有了t14 小时前
设计模式速查
java·python·设计模式
Thomas.Sir15 小时前
第15课:SpringBoot连接池详解:HikariCP配置、调优、监控,4.x连接池新特性
java·spring boot
VimorphTech15 小时前
每批开 4 个线程,为什么限制不住 TTS 的总并发?
java·spring boot·spring
Pniubi15 小时前
Java为什么要分堆和栈
java·开发语言
杨凯凡15 小时前
Spring Boot 缓存一致性怎么保证?@Cacheable、@CacheEvict 与事务提交时机实战
java·spring boot·spring cache·后端开发·缓存一致性