gradle中mavenLocal()失效问题

简介: maven环境变量配置错误致gradle中mavenLocal()失效问题

背景

新项目是以 gradle 构建的,但是以前都是 maven 项目,既然 gradle 可以引用 maven 的仓库,那就直接配置 mavenLocal() 复用就好,结果我们配置了,依然不走 maven 默认仓库。

问题发现

查询 gradle 官网中关于配置 mavenLocal() 的说明时才恍然大悟,官网上有一段如下的话:
image.png
大概意思是说使用 mavenLocal() 配置 maven 的本地仓库后,如果仓库在 setting.xml中设置后则gradle默认会使用本地仓库。关于 gradle 查询setting.xml文件的顺序依次如下:USER_HOME/.m2/settings.xml >> M2_HOME/conf/settings.xml。
看到这里我才发现我的 maven 环境变量配置的是 MAVEN_HOME,而 gradle 默认只会查找 M2_HOME 的路径。所以我们既在用户目录下没有 .m2文件,配置的环境变量又不是 M2_HOME,gradle 能找到才怪呢。

解决

既然问题定位了,那解决问题就很容易了。
两种方式:
方式一:在用户目录下创建 .m2 文件夹,然后将 maven 安装目录中的 setting.xml 拷贝一份扔到 .m2 文件夹下面。
方式二:更改 maven 环境变量为 M2_HOME。

相关文章
|
前端开发 小程序 Java
uniapp上传图片 前端以及java后端代码实现
uniapp上传图片 前端以及java后端代码实现
735 0
|
Linux 虚拟化 iOS开发
macOS Tahoe 26.4 (25E246) 正式版发布
macOS Tahoe 26.4 (25E246) 正式版 ISO、IPSW、PKG 下载
1023 0
|
Java Spring
SpringBoot: 启动Banner在线生成工具
SpringBoot: 启动Banner在线生成工具
40939 1
SpringBoot: 启动Banner在线生成工具
|
12月前
|
开发者
HarmonyOS NEXT实战:网络图片加载和失败占位图
本教程介绍如何在HarmonyOS应用中实现网络图片加载时显示加载图、加载完成后显示图片、加载失败时显示占位图的功能。内容涵盖Image组件的alt、onComplete、onError等接口使用,适用于教育和实战开发场景。
497 0
|
消息中间件 JSON Java
Spring Boot、Spring Cloud与Spring Cloud Alibaba版本对应关系
Spring Boot、Spring Cloud与Spring Cloud Alibaba版本对应关系
36206 1
|
存储 消息中间件 JSON
DDD基础教程:一文带你读懂DDD分层架构
DDD基础教程:一文带你读懂DDD分层架构
|
存储 编解码 数据可视化
Visium HD空间数据分析、可视化以及整合 (2)
Visium HD空间数据分析、可视化以及整合 (2)
Visium HD空间数据分析、可视化以及整合 (2)
|
SQL 前端开发 关系型数据库
芋道框架万字详解(前后端分离)、若依框架、yudao-cloud保姆级攻略
芋道框架万字详解(前后端分离)、若依框架、yudao-cloud保姆级攻略
24185 7
|
Java
在idea中创建java的Gradle项目 讲的很详细的
在idea中创建java的Gradle项目 讲的很详细的
1361 1
|
Docker 容器
7-13|docker build -t image-name:tag path/to/Dockerfile 这个命令具体什么意思
7-13|docker build -t image-name:tag path/to/Dockerfile 这个命令具体什么意思