利用maven的dependency插件将项目依赖从maven仓库中拷贝到一个指定的位置

https://maven.apache.org/plugins/maven-dependency-plugin/copy-dependencies-mojo.html

利用dependency:copy-dependencies可以将项目的依赖从maven仓库中拷贝到一个指定的位置。

使用默认配置拷贝依赖

如果直接执行mvn dependency:copy-dependencies,是将项目的依赖拷贝到工程的target/dependency目录下面,依赖包包含版本号。

例如,到工程的根目录下执行mvn dependency:copy-dependencies


到工程的target/dependency目录下面查看,可以看到,依赖包拷贝过来了:

拷贝时去掉依赖文件名中的版本号

使用<stripVersion>参数可以控制拷贝依赖的时候是否去掉文件名中的版本号,默认是不去掉。在命令中,对应的系统属性是mdep.stripVersion。

例如,在项目根目录下面,运行mvn dependency:copy-dependencies -Dmdep.stripVersion=true


到工程的target/dependency目录下面查看,可以看到,拷贝过来的依赖包都去掉了版本号:

指定拷贝到哪个目录

参数<outputDirectory>可以指定另外一个目的目录。在命令中,对应的系统属性是outputDirectory。如果目的目录没有创建,maven会自动创建:

例如,在cmd窗口运行mvn dependency:copy-dependencies -Dmdep.stripVersion=true -DoutputDirectory=lib,指定将依赖包拷贝到项目根目录下面的lib子目录下:


到项目根目录/lib子目录下查看,内容拷贝过来了:

相关推荐
程序员清风1 小时前
程序员兼职必看:靠谱软件外包平台挑选指南与避坑清单!
java·后端·面试
皮皮林5512 小时前
利用闲置 Mac 从零部署 OpenClaw 教程 !
java
华仔啊7 小时前
挖到了 1 个 Java 小特性:var,用完就回不去了
java·后端
SimonKing8 小时前
SpringBoot整合秘笈:让Mybatis用上Calcite,实现统一SQL查询
java·后端·程序员
日月云棠1 天前
各版本JDK对比:JDK 25 特性详解
java
用户8307196840821 天前
Spring Boot 项目中日期处理的最佳实践
java·spring boot
JavaGuide1 天前
Claude Opus 4.6 真的用不起了!我换成了国产 M2.5,实测真香!!
java·spring·ai·claude code
IT探险家1 天前
Java 基本数据类型:8 种原始类型 + 数组 + 6 个新手必踩的坑
java
花花无缺1 天前
搞懂new 关键字(构造函数)和 .builder() 模式(建造者模式)创建对象
java
用户908324602731 天前
Spring Boot + MyBatis-Plus 多租户实战:从数据隔离到权限控制的完整方案
java·后端