zoukankan      html  css  js  c++  java
  • 关于使用eclipse maven UpdateProject时报错,无法更新本地仓库的问题解决方案

    在做项目中,需要从同事电脑中把Maven项目copy过来,但是copy的过程中只copy了代码,setting.xml文件和pom.xml,使用eclipse把项目导入,有红色的感叹号提示,由于我没有copy项目依赖的jar包,而这些包都放在maven仓库中。所以需要从仓库中拉jar包。

    设置好eclipse中maven的配置后,选中项目右键maven-update project 就会开始下载jar文件。

    下载过程中遇到问题:1、eclipse后台提示某个具体的jar文件下载出错,错误信息有 Error 403  Forbidden。

    2、从本地仓库中看到下在的文件都生成一个.lastUpdated为后缀的文件,百度了下这个文件是从中央仓库找不到下载文件导致的。

    根据上面两个问题可以猜测 这个中央仓库应该不能用或者有权限限制,所以我又去查了下maven中如何配置本地仓库,和中央仓库相关知识。结论如下:

      一:设置Maven本地仓库

      Maven默认仓库的路径:~\.m2\repository,~表示我的个人文档;例如:C:\Users\nicho\.m2\repository;

      Maven的配置本地仓库的文件路径:E:\Maven\apache-maven-3.2.2\conf\settings.xml文件中进行配置的

    我用的mac os系统,先找到当初配置的maven环境变量(时间比较早忘记放哪里了)。

    打开终端输入:mvn -v     可以找到我本地maven的存放目录

    然后打开 /Users/NichoC/local/apache-maven-3.2.2/conf目录下的setting.xml文件 大约53行的位置有一串代码可以配置本地仓库:

    <settings xmlns="http://maven.apache.org/SETTINGS/1.0.0"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="http://maven.apache.org/SETTINGS/1.0.0 http://maven.apache.org/xsd/settings-1.0.0.xsd">
    <!-- localRepository
    | The path to the local repository maven will use to store artifacts.
    |
    | Default: ${user.home}/.m2/repository
    <localRepository>/Users/NichoC/Desktop/mavenRep</localRepository>
    -->

    将标红的标签中的值换成我们想要设置的本地仓库地址即可,记得把注释的标签去掉以生效

      二:查看Maven中央仓库

         Maven最大的好处就是不用拷贝第三方Lib,也不用担心Jar冲突了;那么Maven中所需的Jar会在网络中央库存放着,这样我们只需配置一下,Maven就能在中央仓库中给我们下载本地仓库中;

      在Maven中路径:E:\Maven\apache-maven-3.2.2\lib\maven-model-builder-3.2.2.jar\org\apache\maven\model\下有一个pom.xml的文件

     

    打开http://repo.maven.apache.org/maven2 会指向到中央仓库,但是限制打开地址会看到Error 403  Forbidden

    我想这就是eclipse中后台提示错误的原因所在了吧

    因为这个地址不能用了,那我们可以选择新的仓库去替换掉这个不能用的仓库,新地址可以为 

    http://search.maven.org/#browse  或 http://maven.outofmemory.cn/

    也可以不用管他,使用镜像来配置地址:

    修改maven根目录下的conf文件夹中的setting.xml文件,内容如下: 

    这里是阿里云中央仓库,国内镜像,速度很快,很好用

     <mirrors>
        <mirror>
          <id>alimaven</id>
          <name>aliyun maven</name>
          <url>http://maven.aliyun.com/nexus/content/groups/public/</url>
          <mirrorOf>central</mirrorOf>        
        </mirror>
      </mirrors>

     <mirrorOf>,表示只为central仓库做镜像,如果想为所有的仓库做镜像那么可以改为:<mirrorOf>*</mirrorOf>

    到这里为止,地址配置好了,再update project 之后,jar文件可以下载了。但是感叹号的问题还是存在求解答

  • 相关阅读:
    oracle对中文的排序
    sql语句分页
    一些简单的PGSQL 操作
    angularJSngSelect
    angular+ionic返回上一页并刷新
    C语言博客作业02循环结构
    c语言第一次作业顺序、分支结构
    C语言博客作业03函数
    C语言博客作业02循环结构
    第零次作业
  • 原文地址:https://www.cnblogs.com/nichoc/p/6004967.html
Copyright © 2011-2022 走看看