m2eclipse 无法从中央存储库更新索引

问题描述 投票:0回答:6

我刚刚下载并安装了M2Eclipse,但无法更新中央存储库的索引。 同时,Maven 本身能够从存储库下载工件(通过命令行)。

我在

settings.xml
中有
maven/conf
文件,我将其复制到
.m2/
目录,但没有帮助。

我有代理,但代理设置在

settings.xml
中给出 - 来自命令行的命令工作正常,但在 Eclipse 中不行。在 Eclipse 中它给了我这个:

Unable to update index for central|http://repo1.maven.org/maven2

更新:

这是我尝试创建新的 Maven 项目时得到的结果:

Could not resolve archetype org.apache.maven.archetypes:maven-archetype-quickstart:RELEASE from any of the configured repositories.
Could not resolve artifact
Failed to resolve version for org.apache.maven.archetypes:maven-archetype-quickstart:pom:RELEASE: Could not find metadata org.apache.maven.archetypes:maven-archetype-quickstart/maven-metadata.xml in local (C:\Documents and Settings\user\.m2\repository)
Failed to resolve version for org.apache.maven.archetypes:maven-archetype-quickstart:pom:RELEASE: Could not find metadata org.apache.maven.archetypes:maven-archetype-quickstart/maven-metadata.xml in local (C:\Documents and Settings\user\.m2\repository)
java eclipse maven configuration m2eclipse
6个回答
7
投票

请检查您的 m2eclipse 安装配置,是否已将其指向正确的 settings.xml 文件?

enter image description here


7
投票

只需将此镜像添加到

settings.xml

<mirror>
  <id>ibiblio.org</id>
  <url>http://mirrors.ibiblio.org/maven2</url>
  <mirrorOf>central</mirrorOf>
</mirror>

4
投票

如果您使用代理,请在用户设置文件中进行代理设置,如下所示

<proxies>
    <proxy>
        <id>myId</id>
        <active>true</active>
        <protocol>http</protocol>
        <username>MyUser</username>
        <password>MyPassword</password>
        <host>my.proxy.host</host>
        <port>myproxyport</port>
        <nonProxyHosts>local.net|some.host.com</nonProxyHosts>
    </proxy>
</proxies>

2
投票

为了使自定义 Maven 安装能够在 Eclipse 中工作,需要更改全局和用户特定的设置/xml。我不知道为什么,但它对我有帮助。


0
投票

如果问题与连接/代理无关,请尝试更彻底的方法:删除整个 .metadata 文件夹。稍后从他们的位置导入项目或从 svn 签出它们(如果您使用一些)。这并不复杂,但很有帮助。问题是我们并不真正知道哪些元数据被破坏了,所以下一步自然是删除所有元数据。我认为,这是重新安装 Eclipse + 插件之前最深层的清理。


-2
投票

为了避免必须更改 2 个位置的设置并仅依赖全局设置,这效果很好:

ln -s /etc/maven2/settings.xml ~/.m2/settings.xml
© www.soinside.com 2019 - 2024. All rights reserved.