Maven网络问题?

时间:2012-05-07 21:20:11

标签: maven maven-2 maven-3 m2eclipse maven-eclipse-plugin

问题是:Nexus-maven-repository-index.zip以10kbps的速度下载和maven eclipse:eclipse神器下载停止/​​暂停。我不是任何代理人。

编辑:这是由 AVG Link Scanner 引起的,与Maven failing to download jar dependencies中的问题相同

我想我的maven安装/网络连接存在一些严重问题。

这是我做的和我得到的:

  1. 我一直在尝试使用m2eclipse,但超时后,通过eclipse下载文件 http://mirrors.ibiblio.org/pub/mirrors/maven2/dot-index/nexus-maven-repository-index.zip。我试图通过wget获取文件,我看到的是下载速度是11kbps 。这是某种政策吗?这个11kbps似乎相当稳定。我现在有一个惊人的速度,所以这不是一个暂时的问题。如果这是每个人的政策和常规速度 - 很好。我不会使用m2eclipse,没问题。

  2. 我已经停止使用m2eclipse,我正在使用maven-eclipse-plugin。不,等等 - 我不是。这是当我调用mvn eclipse时发生的事情:eclipse:

  3. 工件下载会在一段时间后随机挂起。然后我点击了^ C,再次运行命令,并且donwload恢复,然后再次挂起,有时在同一个神器,有时我再向前迈出一小步。我在调试模式下运行mvn,它总是挂在同一个地方,下面是stacktrace。与英国回购相同。

  4. 发生了什么事?谢谢你的帮助,我完全迷失了。我认为我的互联网连接很乱,但它确实很好(除了maven)。我觉得像maven repo一样黑了。

    有什么想法吗?

    重要细节如下:

    以下是我如何运行maven (任何线程编号都相同)

    mvnDebug eclipse:eclipse -DdownloadSources=true -Dmaven.artifact.threads=1

    这是我的maven版本(最新的maven 2版本也是如此):

    $ mvn --version
    Apache Maven 3.0.4 (r1232337; 2012-01-17 09:44:56+0100)
    Maven home: C:\apache-maven-3.0.4
    Java version: 1.7.0_04, vendor: Oracle Corporation
    Java home: C:\Program Files\Java\jdk1.7.0_04\jre
    Default locale: pl_PL, platform encoding: Cp1250
    OS name: "windows vista", version: "6.0", arch: "x86", family: "windows"
    

    这是maven eclipse的堆栈跟踪:eclipse挂起(看起来像网络问题,但为什么?):

    java.net.SocketInputStream.socketRead0(java.io.FileDescriptor, byte[], int, int, int) line: not available [native method]   
    java.net.SocketInputStream.read(byte[], int, int, int) line: 150    
    java.net.SocketInputStream.read(byte[], int, int) line: 121 
    org.apache.maven.wagon.providers.http.httpclient.impl.io.SocketInputBuffer(org.apache.maven.wagon.providers.http.httpclient.impl.io.AbstractSessionInputBuffer).fillBuffer() line: 149  
    org.apache.maven.wagon.providers.http.httpclient.impl.io.SocketInputBuffer.fillBuffer() line: 110   
    org.apache.maven.wagon.providers.http.httpclient.impl.io.SocketInputBuffer(org.apache.maven.wagon.providers.http.httpclient.impl.io.AbstractSessionInputBuffer).read(byte[], int, int) line: 195    
    org.apache.maven.wagon.providers.http.httpclient.impl.io.ChunkedInputStream.read(byte[], int, int) line: 173    
    org.apache.maven.wagon.providers.http.httpclient.conn.EofSensorInputStream.read(byte[], int, int) line: 138 
    java.util.zip.GZIPInputStream(java.util.zip.InflaterInputStream).fill() line: 238   
    java.util.zip.GZIPInputStream(java.util.zip.InflaterInputStream).read(byte[], int, int) line: 158   
    java.util.zip.GZIPInputStream.read(byte[], int, int) line: 116  
    org.apache.maven.wagon.providers.http.HttpWagon(org.apache.maven.wagon.AbstractWagon).transfer(org.apache.maven.wagon.resource.Resource, java.io.InputStream, java.io.OutputStream, int, int) line: 493 
    org.apache.maven.wagon.providers.http.HttpWagon(org.apache.maven.wagon.AbstractWagon).getTransfer(org.apache.maven.wagon.resource.Resource, java.io.OutputStream, java.io.InputStream, boolean, int) line: 339  
    org.apache.maven.wagon.providers.http.HttpWagon(org.apache.maven.wagon.AbstractWagon).getTransfer(org.apache.maven.wagon.resource.Resource, java.io.File, java.io.InputStream, boolean, int) line: 310  
    org.apache.maven.wagon.providers.http.HttpWagon(org.apache.maven.wagon.AbstractWagon).getTransfer(org.apache.maven.wagon.resource.Resource, java.io.File, java.io.InputStream) line: 287    
    org.apache.maven.wagon.providers.http.HttpWagon(org.apache.maven.wagon.StreamWagon).getIfNewer(java.lang.String, java.io.File, long) line: 97   
    org.apache.maven.wagon.providers.http.HttpWagon(org.apache.maven.wagon.StreamWagon).get(java.lang.String, java.io.File) line: 61    
    org.sonatype.aether.connector.wagon.WagonRepositoryConnector$GetTask<T>.run() line: 601 
    org.sonatype.aether.util.concurrency.RunnableErrorForwarder$1.run() line: 60    
    org.sonatype.aether.connector.wagon.WagonRepositoryConnector$1.execute(java.lang.Runnable) line: 192    
    org.sonatype.aether.connector.wagon.WagonRepositoryConnector.get(java.util.Collection<? extends org.sonatype.aether.spi.connector.ArtifactDownload>, java.util.Collection<? extends org.sonatype.aether.spi.connector.MetadataDownload>) line: 445  
    org.sonatype.aether.impl.internal.DefaultArtifactResolver.resolve(org.sonatype.aether.RepositorySystemSession, java.util.Collection<? extends org.sonatype.aether.resolution.ArtifactRequest>) line: 457    
    org.sonatype.aether.impl.internal.DefaultArtifactResolver.resolveArtifacts(org.sonatype.aether.RepositorySystemSession, java.util.Collection<? extends org.sonatype.aether.resolution.ArtifactRequest>) line: 216   
    org.sonatype.aether.impl.internal.DefaultArtifactResolver.resolveArtifact(org.sonatype.aether.RepositorySystemSession, org.sonatype.aether.resolution.ArtifactRequest) line: 193    
    org.sonatype.aether.impl.internal.DefaultRepositorySystem.resolveArtifact(org.sonatype.aether.RepositorySystemSession, org.sonatype.aether.resolution.ArtifactRequest) line: 286    
    org.apache.maven.artifact.resolver.DefaultArtifactResolver.resolve(org.apache.maven.artifact.Artifact, java.util.List<org.apache.maven.artifact.repository.ArtifactRepository>, org.sonatype.aether.RepositorySystemSession) line: 213  
    org.apache.maven.artifact.resolver.DefaultArtifactResolver.resolve(org.apache.maven.artifact.Artifact, java.util.List<org.apache.maven.artifact.repository.ArtifactRepository>, org.apache.maven.artifact.repository.ArtifactRepository, org.apache.maven.wagon.events.TransferListener) line: 157  
    org.apache.maven.artifact.resolver.DefaultArtifactResolver.resolve(org.apache.maven.artifact.Artifact, java.util.List<org.apache.maven.artifact.repository.ArtifactRepository>, org.apache.maven.artifact.repository.ArtifactRepository) line: 525  
    org.apache.maven.plugin.ide.IdeUtils.resolveArtifact(org.apache.maven.artifact.resolver.ArtifactResolver, org.apache.maven.artifact.Artifact, java.util.List, org.apache.maven.artifact.repository.ArtifactRepository, org.apache.maven.plugin.logging.Log) line: 442   
    org.apache.maven.plugin.eclipse.EclipsePlugin(org.apache.maven.plugin.ide.AbstractIdeSupportMojo).resolveDependenciesWithClassifier(org.apache.maven.plugin.ide.IdeDependency[], java.lang.String, boolean) line: 990   
    org.apache.maven.plugin.eclipse.EclipsePlugin(org.apache.maven.plugin.ide.AbstractIdeSupportMojo).resolveSourceAndJavadocArtifacts(org.apache.maven.plugin.ide.IdeDependency[]) line: 918   
    org.apache.maven.plugin.eclipse.EclipsePlugin(org.apache.maven.plugin.ide.AbstractIdeSupportMojo).execute() line: 509   
    org.apache.maven.plugin.DefaultBuildPluginManager.executeMojo(org.apache.maven.execution.MavenSession, org.apache.maven.plugin.MojoExecution) line: 101 
    org.apache.maven.lifecycle.internal.MojoExecutor.execute(org.apache.maven.execution.MavenSession, org.apache.maven.plugin.MojoExecution, org.apache.maven.lifecycle.internal.ProjectIndex, org.apache.maven.lifecycle.internal.DependencyContext) line: 209 
    org.apache.maven.lifecycle.internal.MojoExecutor.execute(org.apache.maven.execution.MavenSession, org.apache.maven.plugin.MojoExecution, org.apache.maven.lifecycle.internal.ProjectIndex, org.apache.maven.lifecycle.internal.DependencyContext, org.apache.maven.lifecycle.internal.PhaseRecorder) line: 153  
    org.apache.maven.lifecycle.internal.MojoExecutor.execute(org.apache.maven.execution.MavenSession, java.util.List<org.apache.maven.plugin.MojoExecution>, org.apache.maven.lifecycle.internal.ProjectIndex) line: 145    
    org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(org.apache.maven.execution.MavenSession, org.apache.maven.execution.MavenSession, org.apache.maven.lifecycle.internal.ReactorContext, org.apache.maven.project.MavenProject, org.apache.maven.lifecycle.internal.TaskSegment) line: 84  
    org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(org.apache.maven.execution.MavenSession, org.apache.maven.lifecycle.internal.ReactorContext, org.apache.maven.project.MavenProject, org.apache.maven.lifecycle.internal.TaskSegment) line: 59   
    org.apache.maven.lifecycle.internal.LifecycleStarter.singleThreadedBuild(org.apache.maven.execution.MavenSession, org.apache.maven.lifecycle.internal.ReactorContext, org.apache.maven.lifecycle.internal.ProjectBuildList, java.util.List<org.apache.maven.lifecycle.internal.TaskSegment>, org.apache.maven.lifecycle.internal.ReactorBuildStatus) line: 183  
    org.apache.maven.lifecycle.internal.LifecycleStarter.execute(org.apache.maven.execution.MavenSession) line: 161 
    org.apache.maven.DefaultMaven.doExecute(org.apache.maven.execution.MavenExecutionRequest) line: 320 
    org.apache.maven.DefaultMaven.execute(org.apache.maven.execution.MavenExecutionRequest) line: 156   
    org.apache.maven.cli.MavenCli.execute(org.apache.maven.cli.MavenCli$CliRequest) line: 537   
    org.apache.maven.cli.MavenCli.doMain(org.apache.maven.cli.MavenCli$CliRequest) line: 196    
    org.apache.maven.cli.MavenCli.main(java.lang.String[], org.codehaus.plexus.classworlds.ClassWorld) line: 141    
    sun.reflect.NativeMethodAccessorImpl.invoke0(java.lang.reflect.Method, java.lang.Object, java.lang.Object[]) line: not available [native method]    
    sun.reflect.NativeMethodAccessorImpl.invoke(java.lang.Object, java.lang.Object[]) line: 57  
    sun.reflect.DelegatingMethodAccessorImpl.invoke(java.lang.Object, java.lang.Object[]) line: 43  
    java.lang.reflect.Method.invoke(java.lang.Object, java.lang.Object...) line: 601    
    org.codehaus.plexus.classworlds.launcher.Launcher.launchEnhanced(java.lang.String[]) line: 290  
    org.codehaus.plexus.classworlds.launcher.Launcher.launch(java.lang.String[]) line: 230  
    org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode(java.lang.String[]) line: 409    
    org.codehaus.plexus.classworlds.launcher.Launcher.main(java.lang.String[]) line: 352    
    

    感谢任何提示。

    科内尔

1 个答案:

答案 0 :(得分:1)

两条快速建议:

  • 不要使用ibiblio,规范的Maven存储库是http://repo1.maven.org/maven2 - 它由Sonatype维护,现在由全局CDN提供服务。下载索引时不应该有任何速度问题。

  • 考虑在您和公共存储库之间放置一个存储库管理器。你会经常发现性能会因此而得到改善......非常好。

不要打扰用wget下载,它对你没有帮助。实际上,您可能会看到下载时间较慢,因为您尝试使用wget。我最强烈的建议是使用存储库管理器:Nexus或Artifactory。