IntelliJ IDEA更新Maven远程仓库索引

IntelliJ IDEA更新Maven远程仓库索引

​ 因为某些原因,在 IDEA 下载 Maven 索引总是特别慢,有时候等待它下载好几个小时,然后突然抽风下载失败,再下载又要重新下了,所以这里介绍从远程下载索引到本地更新的方法。

​ 本文默认你已经在 IDEA 配置好了 Maventomcat 环境,并且在 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 服务。

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

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

    将端口 8080 改为 80tomcat 服务启动以后,访问路径是 127.0.0.1:8080http 默认端口是 80 ,所以先改 tomcat 端口为80,这样浏览器输入127.0.0.1 就是 tomcat 主页

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

  4. tomcat根目录/webapps/ROOT/ 下 创建文件夹 /repository/public/.index/ ,将下载好的文件移动到 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/central/.index/nexus-maven-repository-index.properties,看看是不是正常访问。

  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
  • 4
    点赞
  • 19
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
### 回答1: 在使用IntelliJ IDEA开发项目时,如果在依赖的jar包上出现红色下划线,但是我们的本地仓库确实已经存在该jar包,可能有以下几种情况和解决方法: 1. 本地仓库路径问题:首先我们需要确认本地仓库的路径是否正确配置,可以通过进入IntelliJ IDEA的设置->Build, Execution, Deployment->Maven->User Settings选项,查看本地仓库路径是否正确设置。 2. 依赖jar包版本问题:如果本地仓库中存在该jar包的不同版本,而在项目中使用了其他版本,会导致出现红色下划线。可以检查项目的pom.xml文件中依赖的版本是否与本地仓库中的版本一致。 3. 依赖关系问题:有时候,jar包依赖的其他jar包可能没有正确引入导致出现红色下划线。可以通过在项目的pom.xml文件中确认依赖的完整性和正确性,确保所有相关的依赖都被正确引入。 4. Maven仓库索引问题:有时候,Maven仓库索引可能过期或者损坏,导致IntelliJ IDEA无法准确地找到依赖的jar包。可以尝试更新Maven仓库索引,方法是在IntelliJ IDEA中点击菜单栏的"Build"->"Rebuild Project",让IDEA重新构建项目。 5. 清理缓存问题:有时候,IntelliJ IDEA的缓存可能会导致建议错误地显示红色下划线。可以尝试通过点击菜单栏的"File"->"Invalidate Caches / Restart"来清理IDEA的缓存,然后重新构建项目。 总之,当IntelliJ IDEA显示红色下划线,但本地仓库确实存在jar包时,我们需要检查本地仓库路径、依赖jar包版本、依赖关系、Maven仓库索引以及清理缓存等方面,来排查和解决该问题。 ### 回答2: IntelliJ IDEA是一款功能强大的集成开发环境,而Maven是一个软件项目管理与构建自动化工具。当在IDEA中使用Maven构建项目时,常常会出现红色下划线,表示IDEA在编译期间未能找到所需的jar包。这种情况通常出现在本地仓库中有jar包的情况下。 造成这种情况的可能有几个原因。首先,检查一下是否在IDEA中正确配置了Maven。在IDEA的设置中,我们可以指定本地Maven的安装路径和Maven仓库的位置。确保这些设置都是正确的。 其次,还需要检查Maven的配置文件。Maven使用pom.xml文件管理项目的依赖关系,我们可以在这个文件中指定所需的jar包。请确保pom.xml文件中的依赖项是正确的,并且版本号能够在本地仓库中找到。 另外,如果本地仓库中的jar包是通过手动安装添加的,可能需要手动更新Maven的本地仓库索引。在IDEA中,可以通过点击"Reimport All Maven Projects"按钮来重新导入并更新依赖项。 最后,如果仍然存在红色下划线问题,可以尝试清理IDEA的缓存。在IDEA的"File"菜单中,选择"Invalidate Caches / Restart"选项,然后重新启动IDEA。 总之,当出现IntelliJ IDEAMaven依赖项红色下划线但本地仓库中有jar包时,需要检查IDEAMaven的配置,确保依赖项正确,并重新导入和更新Maven项目。如果问题仍未解决,可以尝试清理IDEA的缓存。 ### 回答3: 当IntelliJ IDEA在使用Maven构建项目时,经常会出现红色下划线的情况,这是因为IDEA无法找到相应的依赖jar包。 首先,检查一下你的本地Maven仓库是否已经正确地下载和安装了所需的jar包。你可以通过在命令行中运行"Maven install"或"mvn install"命令来确保所有依赖项已经正确地安装到本地仓库。如果安装成功,你应该能够在本地Maven仓库的正确路径下找到对应的jar文件。 然后,确保你的pom.xml文件中正确地引入了相应的依赖。查看pom.xml文件,确保你使用了正确的groupId、artifactId和version来指定依赖项。如果你在使用私有仓库或本地仓库,请确保你已经正确配置了仓库地址。 如果以上步骤都已经确认正确,但是仍然出现红色下划线提示缺少依赖包,可以尝试以下解决方法: 1. 点击红色下划线,选择"Add Maven Dependency",IntelliJ IDEA会自动搜索并添加相应的依赖项。 2. 在IDEA中,点击"File" -> "Invalidate Caches / Restart",然后重新启动IDEA。有时候缓存问题会导致IDEA无法正确读取本地仓库。 3. 在Maven工具窗口中,右键单击项目,选择"Reload All Maven Projects"重新加载Maven项目。 如果以上方法仍然无法解决问题,可能是你的依赖项在远程Maven仓库中没有被正确地发布或更新。在这种情况下,你可以尝试手动下载所需的jar包,并通过"Add JAR/Folder"选项将其添加到项目的依赖中。 总结一下,当IntelliJ IDEA中的Maven项目出现红色下划线但本地仓库已经有jar包时,首先确保本地仓库已经正确地安装了所需的依赖包,然后检查pom.xml文件中的依赖配置是否正确,如果仍然无法解决问题,可以尝试重新加载项目或手动添加依赖。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值