【问题标题】:Artifact downloading takes a lot of time without result神器下载需要很长时间没有结果
【发布时间】:2015-06-28 11:17:00
【问题描述】:

请帮我解决以下情况:

  1. 我有两个 Nexus 存储库

  2. 我在 C:\Users\Login.m2 中有两个 settings.xml 文件:

    发布 开发商 快照 开发商

    <profiles>
        <profile>
            <id>default</id>
            <activation>
                <activeByDefault>true</activeByDefault>
            </activation>
            <repositories>
                <repository>
                    <id>releases</id>
                    <name>Releases Repository</name>
                    <url>http://30.30.20.40:8085/nexus/content/repositories/releases/</url>
                    <releases>
                        <enabled>true</enabled>
                    </releases>
                    <snapshots>
                        <enabled>false</enabled>
                    </snapshots>
                </repository>
                <repository>
                    <id>snapshots</id>
                    <name>Snapshots Repository</name>
                    <url>http://30.30.20.40:8085/nexus/content/repositories/snapshots/</url>
                    <releases>
                        <enabled>false</enabled>
                    </releases>
                    <snapshots>
                        <enabled>true</enabled>
                    </snapshots>
                </repository>
                <repository>
                    <id>thirdparty</id>
                    <name>3-d Party Artifacts Repository</name>
                    <url>http://30.30.20.40:8085/nexus/content/repositories/thirdparty/</url>
                               <releases>
                        <enabled>true</enabled>
                    </releases>
                    <snapshots>
                        <enabled>false</enabled>
                    </snapshots>
                </repository>
            </repositories>
        </profile>
    </profiles>
    

在 C:\apache-maven-3.2.3\conf:

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

  <servers>
   <server>
      <id>snapshots</id>
      <username>deployment</username>
      <password>@@@@@@@@</password>
   </server>
   
   <server>
            <id>releases</id>
            <username>developer</username>
            <password>@@@@@@</password>
   </server>
  <server>
            <id>snapshots</id>
            <username>developer</username>
            <password>@@@@@@</password>
    </server>
   
    <server>
            <id>thirdparty</id>
            <username>developer</username>
            <password>@@@@@@@@@@</password>
    </server>
 </servers>

    
  
  <profiles>
    
  <profile>
    <id>nexus</id>
    <repositories>
             <repository>
                <id>nexus-repo</id>
                <name>Nexus repo</name>
                <url>http://192.22.0.17:8080/nexus-webapp-2.11.0-02/content/groups/public/</url>
                <releases>
                  <enabled>true</enabled>
                </releases>
                <snapshots>
                  <enabled>true</enabled>
                </snapshots>
             </repository>
      
    </repositories>

</profile>
   
  <profile>
    <id>adc</id>
    <repositories>
           <repository>
                    <id>releases</id>
                    <name> Releases Repository</name>
                    <url>http://30.30.20.40:8085/nexus/content/repositories/releases/</url>
                    <releases>
                        <enabled>true</enabled>
                    </releases>
                    <snapshots>
                        <enabled>false</enabled>
                    </snapshots>
           </repository>
        
        <repository>
                    <id>snapshots</id>
                    <name>Snapshots Repository</name>
                    <url>http://30.30.20.40:8085/nexus/content/repositories/snapshots/</url>
                    <releases>
                        <enabled>false</enabled>
                    </releases>
                    <snapshots>
                        <enabled>true</enabled>
                    </snapshots>
                </repository>
    
          <repository>
            <id> thirdparty</id>
            <name>3-d Party Artifacts Repository</name>
                <url>http://30.30.20.40:8085/nexus/content/repositories/thirdparty/</url>
                    <releases>
                <enabled>true</enabled>
                </releases>
                <snapshots>
                    <enabled>false</enabled>
                </snapshots>
           </repository>
      
      
    </repositories>
    
    <pluginRepositories>
      <pluginRepository>
        <id>nexus-repo</id>
        <name>Nexus repo </name>
        <url>http://192.22.0.17:8080/nexus-webapp-2.11.0-02/content/groups/public/</url>
        <releases>
          <enabled>true</enabled>
        </releases>
        <snapshots>
          <enabled>true</enabled>
        </snapshots>
      </pluginRepository>
      
  <pluginRepository>
        <id>releases</id>
        <name> Releases Repository</name>
        <url>http://30.30.20.40:8085/nexus/content/repositories/releases/</url>
      <releases>
        <enabled>true</enabled>
    </releases>
        <snapshots>
            <enabled>false</enabled>
    </snapshots>
      </pluginRepository>
      
      
    </pluginRepositories>
</profile>
  </profiles>
<activeProfiles>
  <activeProfile>nexus</activeProfile>
  <activeProfile>adc</activeProfile>
</activeProfiles>
</settings>
  1. 问题是:当我运行“mvn clean package”时,下载需要很多时间:

[信息] 下载: http://30.30.20.40:8085/nexus/content/repositories/releases/org/apache/httpcomponents/project/4.1.1/project-4.1.1.pom [信息] 下载: http://30.30.20.40:8085/nexus/content/repositories/thirdparty/org/apache/httpcomponents/project/4.1.1/project-4.1.1.pom

看起来 Maven 尝试在一个存储库中下载工件,失败时尝试在另一个存储库中下载工件。

我正在尝试更正 C:\Program Files\Java\jdk1.7.0_67\jre\lib\amd64\jvm.cfg,如此处所述https://rogerkeays.com/why-is-maven-so-slow 但没有效果。

这是我的附加设置:

java-版本

java 版本 "1.8.0_40" Java(TM) SE Runtime Environment (build 1.8.0_40-b26) Java HotSpot(TM) 64 位服务器 VM(内部版本 25.40-b25,混合模式)

mvn -version Apache Maven 3.2.3 (33f8c3e1027c3ddde99d3cdebad2656a31e8fdf4;2014-08-12T00:58:10+04:00) Maven 主页:C:\apache-maven-3.2.3\bin.. Java 版本:1.7.0_67, 供应商:Oracle Corporation Java 主页:C:\Program Files\Java\jdk1.7.0_67\jre 默认语言环境:ru_RU,平台编码: cp1251 操作系统名称:“windows 7”,版本:“6.1”,arch:“amd64”,系列: “窗户”

【问题讨论】:

  • 那么当您将这些下载 URL 放入浏览器时会发生什么?这也需要很长时间才能做任何事情吗?它会出错吗?这一切听起来像是一个最终会超时的网络连接问题。 Nexus 服务器是否已启动并运行并侦听该 IP 和端口?
  • 我尝试在浏览器中复制网址并按回车键。这两个结果都是: 404 - 路径 /org/.../spring-framework-bom-4.1.4.RELEASE.pom 在存储库“Releases”[id=releases] 的本地存储中找不到; 404 - 路径 /commons-codec/.....1.4/commons-codec-1.4.pom 在存储库“Releases”[id=releases] 的本地存储中找不到;远程登录 - 好的。 Ping - 好的。
  • 但是其他电脑上也有404错误,项目打包正确。

标签: java maven-3 artifact


【解决方案1】:

您可以使用 -T 命令在多个线程中运行 maven,如下所示,

mvn clean install -T 4

这将在 4 个线程中执行 maven 构建。您可以尝试mvn --help 了解更多信息。

【讨论】:

    【解决方案2】:

    Repocache 加速下载。很了不起。

    添加 repocache.cfg

    [mvn.upstream.releases]
    url = http://30.30.20.40:8085/nexus/content/repositories/releases
    

    这会将包缓存在mvn/releases

    更改 $HOME/.m2/settings.xml 添加:

    <repository>
      <id>releases</id>
      <url>http://127.0.0.1:5000/mvn/releases</url>
    </repository>
    

    这对我有用。

    【讨论】:

      【解决方案3】:

      我的情况如下所述,问题出在安全设置中。安全官在我的电脑上禁用(设置)安全代理,现在工件下载正常。谢谢你,金比。

      【讨论】:

        猜你喜欢
        • 2019-01-07
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多