Maven 中央仓库访问过慢的解决方案--设置国内镜像

在现今的 Java 开发活动中, 无论你是用古老的 Ant, 还是 Maven 本身, 亦或是 Gradle, 你都经常需要访问 Maven 的中央仓库以获取所依赖的包. 鉴于中央仓库的访问巨大, 再背上我们特殊国情的友军火力的锅, 获取依赖的过程中经常慢得令人发指, 甚至导致构建失败, IDE 失去响应等等.

为此, 最好的方式是为中央仓库设置国内镜像, 这样对中央仓库的访问将会被镜像到国内的镜像上, 访问速度将得到有效提升.

国内公共镜像

目前为止, 国内较好的公共镜像是阿里巴巴的阿里云所提供的.

其地址为: http://maven.aliyun.com/nexus/content/groups/public/

如果你有更好的发现, 欢迎留言告诉我.

配置使用镜像

如果你安装有本地原生的 Maven,

如果直接使用 IDE 的 Maven 插件, 相关设置见后面的介绍.

那么去到你的 Maven 安装目录的 conf 目录下, 找到 settings.xml, 比如在我的机子上是:

友情提示: 修改前最好先做一备份, 比如如上所示, 拷贝一份, 改名为 settings.xml.bak.

打开它, 找到 mirrors 节点, 加入以下内容:

xml 复制代码
<mirror>
    <id>alimaven</id>
    <name>aliyun maven</name>
    <url>http://maven.aliyun.com/nexus/content/groups/public/</url>
    <mirrorOf>central</mirrorOf>
</mirror>

最终结果如下图所示:

配置 IDE 中的 Maven 插件

许多 IDE 本身也带有 Maven 插件, 你可以配置使用本地 Maven, 或直接使用 IDE 本身的插件, 下面一并说下相关配置.

以 Eclipse 为例, 打开 Windows -- Preference, 在过滤框中键入 "maven", 找到 Maven -- Installations, 如下:

如果你打算用本地 Maven 来构建, 那么在这里要添加并勾选上本地 Maven 的选项, 如上所示.

默认会使用上述第一项: EMBEDDED, 即 IDE 本身所带的嵌入式 Maven 插件.

然后去到 User Settings 中,

确保 Global Settings 中用的是我们刚才设置的配置文件, 然后按下"Update Settings"以更新设置.

如果你没有安装本地 Maven, 则可以在上述图中蓝色框中所指的文件中添加以上配置.

注: 其中的 upfu 是我的本地用户名.

观察以验证配置

当以上配置完成并生效后, 可以新建一个 Maven 项目测试一下, 或者简单修改一下 pom.xml, 观察依赖加载的情况, 以 Eclipse 为例, 如果在 progress 视图中观察到如下的情况:

更新动作的地址中出现了所配置的 aliyun 的 url, 则说明已经配置成功了.

相关推荐
计算机学姐7 小时前
基于SpringBoot的小区停车位管理系统
java·vue.js·spring boot·后端·mysql·spring·maven
console.log('只想发财')9 小时前
新手安装java所有工具(jdk、idea,Maven,数据库)
java·maven·intellij-idea
贺函不是涵20 小时前
【沉浸式求职学习day36】【初识Maven】
java·学习·maven
Minyy111 天前
“爱生活”小项目问题总结
java·数据库·spring boot·spring·maven·intellij-idea
程序员阿鹏1 天前
Spring Boot项目(Vue3+ElementPlus+Axios+MyBatisPlus+Spring Boot前后端分离)
java·前端·vue.js·spring boot·后端·spring·maven
极小狐2 天前
如何使用极狐GitLab 软件包仓库功能托管 maven?
java·运维·数据库·安全·c#·gitlab·maven
极小狐2 天前
如何使用极狐GitLab 软件包仓库功能托管 helm chart?
java·linux·服务器·数据库·c#·gitlab·maven
曼岛_2 天前
[架构之美]IntelliJ IDEA创建Maven项目全流程(十四)
架构·maven·intellij-idea
曼岛_2 天前
[架构之美]从零开始整合Spring Boot与Maven(十五)
spring boot·架构·maven
forestsea2 天前
Maven 插件配置分层架构深度解析
java·架构·maven