如何在Spring Boot项目的pom.xml中引用本地依赖副本进行测试?
如何在Spring Boot项目的pom.xml中引用本地依赖副本进行测试?
当然可以啦!我给你分享几个日常开发里常用的办法,帮你在Spring Boot项目里用上本地修改后的依赖:
方法一:将本地修改后的依赖安装到本地Maven仓库(推荐)
这是最符合Maven规范的方式,也不会有路径相关的问题,步骤很简单:
- 打开终端,进入你本地克隆的
logger项目根目录(就是包含它自己pom.xml的文件夹) - 执行Maven命令完成打包并安装到本地仓库:
加mvn clean install -DskipTests-DskipTests是为了跳过测试环节节省时间,如果你确认修改后的代码测试没问题,也可以去掉这个参数 - 回到你的Spring Boot项目,确保
pom.xml里的logger依赖版本和你本地安装的一致(如果没改版本号就是1.2.3),然后重新构建你的项目,Maven会自动优先使用本地仓库里你刚安装的修改后版本。
方法二:直接引用本地打包好的Jar文件(临时测试用)
如果你不想把依赖安装到本地仓库,也可以直接指定本地Jar的路径,适合快速临时测试:
修改Spring Boot项目pom.xml里的logger依赖,添加system作用域和本地Jar的路径:
<dependency> <groupId>my.groupid</groupId> <artifactId>logger</artifactId> <version>1.2.3</version> <scope>system</scope> <systemPath>${project.basedir}/../logger/target/logger-1.2.3.jar</systemPath> </dependency>
注意:${project.basedir}代表你的Spring Boot项目根目录,后面的路径要替换成你本地logger项目打包后Jar文件的实际路径(一般在logger项目的target文件夹下)。这种方法的缺点是路径是本地专属的,团队其他成员拉取代码后可能会报错,所以只适合自己本地临时测试使用。
方法三:将依赖项目作为子模块关联(长期迭代用)
如果你打算长期在两个项目间来回修改迭代,可以把logger项目和Spring Boot项目组成多模块结构:
- 把你本地克隆的
logger项目移动到合适的位置,比如Spring Boot项目的同级目录下 - 在Spring Boot项目的根
pom.xml中添加模块声明:
<modules> <module>../logger</module> </modules>
- 保持Spring Boot项目里的
logger依赖不变,Maven在构建时会优先构建并使用本地的logger模块,不用再手动安装Jar到本地仓库,非常适合持续迭代开发的场景。
内容来源于stack exchange
相关产品推荐
相关产品推荐

