IntelliJ IDEA更新Maven远程仓库索引index(pom文件终于有快速的自动提示了)

IntelliJ IDEA更新Maven远程仓库索引

因为某些原因,在 IDEA 下载 Maven 索引总是特别慢,有时候等待它下载好几个小时,然后突然抽风下载失败,再下载又要重新下了,所以这里介绍从远程下载索引到本地更新的方法。本文默认你已经在 IDEA 配置好了 Maven 和 tomcat 环境,并且在 IntelliJ IDEA 已经关联了配置好的 Maven。

原理

IDEA 更新索引默认从中央仓库下载,如果在国内,下载非常慢。配置了阿里云镜像,就会从配置的镜像根目录 /.index/ 找索引文件,但是阿里云并没有提供索引服务,所以如果配置了阿里云镜像,再更新索引会报错。

​ 所以我们搭建 tomcat 本地服务器,再把本地服务器伪装成阿里云镜像服务器,将索引文件放到本地服务器,再从中央仓库下载索引文件放到服务器里,这样 IDEA 就会从本地服务器下载索引来更新。

步骤

1. 打开 Maven 的配置文件 :Maven根目录/conf/settings.xml ,先把自己添加的所有镜像注释,然后添加如下镜像,后面我们的 tomcat 本地服务器要伪装成这个镜像服务器:

    <mirror>
        <id>aliyunmaven</id>
        <mirrorOf>*</mirrorOf>
        <name>阿里云公共仓库</name>
        <url>http://maven.aliyun.com/repository/public</url>
    </mirror>

注意是 http 而不是 https !!!因为我们搭建 tomcat 服务器默认是 http 服务。(http是为了后面tomcat直接访问,否则https还得配证书)

2. 打开 tomcat 的服务器配置文件:tomcat根目录/conf/server.xml ,找到这一段:

     <Connector port="8080" protocol="HTTP/1.1"
               connectionTimeout="60000"
               redirectPort="8443" acceptCount="500" maxThreads="400"/>

将端口 8080 改为 80 

3. 手动从中央仓库下载索引,需要下载两个文件:nexus-maven-repository-index.properties 和 nexus-maven-repository-index.gz 。这里有个小坑,从谷歌浏览器直接另存为第一个文件,会自动加 .txt 后缀,注意去除。

4. 在 tomcat根目录/webapps/ROOT/ 下 创建文件夹 /repository/public/.index/ (注意与上面mirror中的对应,且其中的.index文件夹windows无法创建,需要使用Git Bash创建),
将下载好的文件移动到 tomcat根目录/webapps/ROOT/repository/public/.index/ 下,
tomcat 主页对应 tomcat 文件夹中的 ROOT 文件夹,因此,我们在 ROOT 文件夹里加文件,就能通过 127.0.0.1/文件夹名 下载。

5. 使用管理员权限修改 host 文件:C:/Windows/System32/drivers/etc/hosts ,在最后添加一行:127.0.0.1 maven.aliyun.com ,使访问maven.aliyun.com 映射到 127.0.0.1,计算机是先查 host 再查 dns 的,因此,修改 host 文件,把阿里云映射到本地,这样,访问 maven.aliyun.com 时,系统就自动跳到 127.0.0.1 。

6. 启动 tomcat ,在 Windows 系统下双击 tomcat根目录/bin/startup.bat 即可,启动时可能会报找不到 jdk 或者80端口占用等错误,百度一下自行解决,这里不再赘述。启动完成后建议浏览器访问 http://maven.aliyun.com/repository/public/.index/nexus-maven-repository-index.properties,看看是不是正常访问(这里注意:chrome浏览器会强制跳转http为https,所以建议大家使用Git Bash中使用curl命令访问一下有正常的返回内容即说明配置正确 )。

7. 打开 IDEA ,然后打开 File -> Settings 或者快捷键 Ctrl + Alt + S 打开设置,找到 Build,Execution,Deployment -> Build Tools -> Maven -> Respositories ,然后点击 https://repo.maven.apache.org/maven2 再点击 Update 按钮进行更新,这时候千万不能关闭对话框,否则会导致更新失败,IDEA 右下角会有更新进度条,等进度条消失就更新完毕啦。

8. 更新完成后我们要恢复一些配置文件:

  • 关闭 tomcat 服务器,修改 server.xml 配置文件,将 80 端口再改为8080端口。
  • 删除 ROOT 目录下的文件夹。
  • 删除 hosts 最后一行我们添加的映射。
  • 将 Maven 配置文件中 http 再改为 https

本文对原文有补充说明,和对原文的一些错误url路径的修改:

 IntelliJ IDEA更新Maven远程仓库索引_idea启动更新maven索引_Cetuer的博客-CSDN博客

评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值