Eclipse依赖项搜索导致NexusIndexManager IOException

Eclipse依赖项搜索导致NexusIndexManager IOException,eclipse,maven,nexus,Eclipse,Maven,Nexus,我在使用Eclipse配置Nexus存储库时遇到问题。除了依赖项搜索外,其他一切都正常。当我输入依赖项名称时,什么都没有发生。当我在.metadata.plugins\org.Eclipse.m2e.logback.configuration\0.log中查看Eclipse日志时,我看到以下错误: 2013-12-10 10:18:25,499 [Worker-6] ERROR o.e.m.c.i.i.nexus.NexusIndexManager - Unable to update

我在使用Eclipse配置Nexus存储库时遇到问题。除了依赖项搜索外,其他一切都正常。当我输入依赖项名称时,什么都没有发生。当我在.metadata.plugins\org.Eclipse.m2e.logback.configuration\0.log中查看Eclipse日志时,我看到以下错误:

    2013-12-10 10:18:25,499 [Worker-6] ERROR o.e.m.c.i.i.nexus.NexusIndexManager - Unable to update index for nexus|http://ledmd059.lss.emc.com:8081/nexus/content/groups/public
java.io.IOException: Server returned status code 404: Not Found
    at org.eclipse.m2e.core.internal.index.nexus.AsyncFetcher$PipedErrorInputStream.checkError(AsyncFetcher.java:250) ~[org.eclipse.m2e.core_1.4.0.20130601-0317.jar:na]
    at org.eclipse.m2e.core.internal.index.nexus.AsyncFetcher$PipedErrorInputStream.read(AsyncFetcher.java:258) ~[org.eclipse.m2e.core_1.4.0.20130601-0317.jar:na]
    at java.io.PipedInputStream.read(Unknown Source) ~[na:1.7.0_45]
    at java.io.InputStream.read(Unknown Source) ~[na:1.7.0_45]
    at java.util.Properties$LineReader.readLine(Unknown Source) ~[na:1.7.0_45]
    at java.util.Properties.load0(Unknown Source) ~[na:1.7.0_45]
    at java.util.Properties.load(Unknown Source) ~[na:1.7.0_45]
    at org.apache.maven.index.updater.DefaultIndexUpdater.downloadIndexProperties(DefaultIndexUpdater.java:457) ~[indexer-core-3.1.0.jar:3.1.0]
    at org.apache.maven.index.updater.DefaultIndexUpdater.access$100(DefaultIndexUpdater.java:75) ~[indexer-core-3.1.0.jar:3.1.0]
    at org.apache.maven.index.updater.DefaultIndexUpdater$IndexAdaptor.setProperties(DefaultIndexUpdater.java:607) ~[indexer-core-3.1.0.jar:3.1.0]
    at org.apache.maven.index.updater.DefaultIndexUpdater.fetchAndUpdateIndex(DefaultIndexUpdater.java:824) ~[indexer-core-3.1.0.jar:3.1.0]
    at org.apache.maven.index.updater.DefaultIndexUpdater.fetchAndUpdateIndex(DefaultIndexUpdater.java:135) ~[indexer-core-3.1.0.jar:3.1.0]
    at org.eclipse.m2e.core.internal.index.nexus.NexusIndexManager.updateRemoteIndex(NexusIndexManager.java:1126) [org.eclipse.m2e.core_1.4.0.20130601-0317.jar:na]
    at org.eclipse.m2e.core.internal.index.nexus.NexusIndexManager.updateIndex(NexusIndexManager.java:1086) [org.eclipse.m2e.core_1.4.0.20130601-0317.jar:na]
    at org.eclipse.m2e.core.internal.index.nexus.NexusIndex.updateIndex(NexusIndex.java:145) [org.eclipse.m2e.core_1.4.0.20130601-0317.jar:na]
    at org.eclipse.m2e.core.ui.internal.views.MavenRepositoryView$8$1.run(MavenRepositoryView.java:391) [org.eclipse.m2e.core.ui_1.4.0.20130601-0317.jar:na]
    at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) [org.eclipse.core.jobs_3.5.300.v20130429-1813.jar:na]
java.io.IOException: Server returned status code 404: Not Found
    at org.eclipse.m2e.core.internal.index.nexus.AsyncFetcher$MonitorListener.onStatus(AsyncFetcher.java:280) ~[na:na]
    at com.ning.http.client.SimpleAsyncHttpClient$BodyConsumerAsyncHandler.fireStatus(SimpleAsyncHttpClient.java:828) ~[na:na]
    at com.ning.http.client.SimpleAsyncHttpClient$BodyConsumerAsyncHandler.onStatusReceived(SimpleAsyncHttpClient.java:779) ~[na:na]
    at com.ning.http.client.providers.netty.NettyAsyncHttpProvider.updateStatusAndInterrupt(NettyAsyncHttpProvider.java:1587) ~[na:na]
    at com.ning.http.client.providers.netty.NettyAsyncHttpProvider.messageReceived(NettyAsyncHttpProvider.java:1242) ~[na:na]
    at org.jboss.netty.channel.SimpleChannelUpstreamHandler.handleUpstream(SimpleChannelUpstreamHandler.java:80) ~[na:na]
    at org.jboss.netty.channel.DefaultChannelPipeline.sendUpstream(DefaultChannelPipeline.java:564) ~[na:na]
    at org.jboss.netty.channel.DefaultChannelPipeline$DefaultChannelHandlerContext.sendUpstream(DefaultChannelPipeline.java:783) ~[na:na]
    at org.jboss.netty.handler.stream.ChunkedWriteHandler.handleUpstream(ChunkedWriteHandler.java:149) ~[na:na]
    at org.jboss.netty.channel.DefaultChannelPipeline.sendUpstream(DefaultChannelPipeline.java:564) ~[na:na]
    at org.jboss.netty.channel.DefaultChannelPipeline$DefaultChannelHandlerContext.sendUpstream(DefaultChannelPipeline.java:783) ~[na:na]
    at org.jboss.netty.handler.codec.http.HttpContentDecoder.messageReceived(HttpContentDecoder.java:104) ~[na:na]
    at org.jboss.netty.channel.SimpleChannelUpstreamHandler.handleUpstream(SimpleChannelUpstreamHandler.java:80) ~[na:na]
    at org.jboss.netty.channel.DefaultChannelPipeline.sendUpstream(DefaultChannelPipeline.java:564) ~[na:na]
    at org.jboss.netty.channel.DefaultChannelPipeline$DefaultChannelHandlerContext.sendUpstream(DefaultChannelPipeline.java:783) ~[na:na]
    at org.jboss.netty.channel.Channels.fireMessageReceived(Channels.java:302) ~[na:na]
    at org.jboss.netty.handler.codec.replay.ReplayingDecoder.unfoldAndFireMessageReceived(ReplayingDecoder.java:522) ~[na:na]
    at org.jboss.netty.handler.codec.replay.ReplayingDecoder.callDecode(ReplayingDecoder.java:506) ~[na:na]
    at org.jboss.netty.handler.codec.replay.ReplayingDecoder.messageReceived(ReplayingDecoder.java:443) ~[na:na]
    at org.jboss.netty.channel.SimpleChannelUpstreamHandler.handleUpstream(SimpleChannelUpstreamHandler.java:80) ~[na:na]
    at org.jboss.netty.handler.codec.http.HttpClientCodec.handleUpstream(HttpClientCodec.java:77) ~[na:na]
    at org.jboss.netty.channel.DefaultChannelPipeline.sendUpstream(DefaultChannelPipeline.java:564) ~[na:na]
    at org.jboss.netty.channel.DefaultChannelPipeline.sendUpstream(DefaultChannelPipeline.java:559) ~[na:na]
    at org.jboss.netty.channel.Channels.fireMessageReceived(Channels.java:274) ~[na:na]
    at org.jboss.netty.channel.Channels.fireMessageReceived(Channels.java:261) ~[na:na]
    at org.jboss.netty.channel.socket.nio.NioWorker.read(NioWorker.java:349) ~[na:na]
    at org.jboss.netty.channel.socket.nio.NioWorker.processSelectedKeys(NioWorker.java:280) ~[na:na]
    at org.jboss.netty.channel.socket.nio.NioWorker.run(NioWorker.java:200) ~[na:na]
    at org.jboss.netty.util.ThreadRenamingRunnable.run(ThreadRenamingRunnable.java:108) ~[na:na]
    at org.jboss.netty.util.internal.DeadLockProofWorker$1.run(DeadLockProofWorker.java:44) ~[na:na]
    at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source) ~[na:1.7.0_45]
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source) ~[na:1.7.0_45]
    at java.lang.Thread.run(Unknown Source) ~[na:1.7.0_45]
My settings.xml文件非常普通:

    <?xml version="1.0" encoding="UTF-8"?>

<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">


<mirrors>
    <mirror>
        <id>nexus</id>
        <mirrorOf>*</mirrorOf>
        <url>http://ledmd059.lss.emc.com:8081/nexus/content/groups/public</url>
    </mirror>
</mirrors>

 <profiles>
    <profile>
      <id>nexus</id>
      <!--Enable snapshots for the built in central repo to direct -->
      <!--all requests to nexus via the mirror -->
      <repositories>
        <repository>
          <id>central</id>
          <url>http://central</url>
          <releases><enabled>true</enabled></releases>
          <snapshots><enabled>true</enabled></snapshots>
        </repository>
      </repositories>
     <pluginRepositories>
        <pluginRepository>
          <id>central</id>
          <url>http://central</url>
          <releases><enabled>true</enabled></releases>
          <snapshots><enabled>true</enabled></snapshots>
        </pluginRepository>
      </pluginRepositories>
    </profile>
  </profiles>
  <activeProfiles>
    <!--make the profile active all the time -->
    <activeProfile>nexus</activeProfile>
  </activeProfiles>


<servers>
 <server>
       <id>releases</id>
       <username>deployment</username>
       <password>deployment123</password>
     </server>
    <server>
       <id>snapshots</id>
       <username>deployment</username>
       <password>deployment123</password> 
     </server>
    <server>
       <id>nexus</id>
       <username>deployment</username>
       <password>deployment123</password> 
     </server>
</servers>

</settings>

关系
*
http://ledmd059.lss.emc.com:8081/nexus/content/groups/public
关系
中心的
http://central
真的
真的
中心的
http://central
真的
真的
关系
释放
部署
部署123
快照
部署
部署123
关系
部署
部署123

剩下的工作是:如果我在pom中手动输入依赖项,Maven将通过Nexus查找并下载它

您在哪里看到eclipse/m2e将为您引用的NexusRepo编制索引?我不是说那是错的,我只是从来没有看到过任何暗示这一点的东西。我一直认为索引和搜索只对本地repo有效,而对maven central有效,如果没有索引repo,依赖项搜索将无法工作。也许我错误地认为它应该在Nexus发挥作用时起作用。在“Maven Repositories”视图中,我将nexus和central视为全局回购。当我尝试为它们编制索引时,Eclipse日志中出现异常