Apache Ambari maven 构建失败:"Connect to nexus-private.hortonworks.com:80 [...] timed out"?
Apache Ambari maven build fails: "Connect to nexus-private.hortonworks.com:80 [...] timed out"?
正在尝试通过 docs
从源代码在 CentOS 7 上构建 apache ambari v2.7.3
获取错误:
[ERROR] Failed to execute goal on project ambari-metrics-storm-sink-legacy: Could not resolve dependencies for project org.apache.ambari:ambari-metrics-storm-sink-legacy:jar:2.7.3.0.0: Failed to collect dependencies at org.apache.storm:storm-core:jar:0.10.0.2.3.0.0-2557: Failed to read artifact descriptor for org.apache.storm:storm-core:jar:0.10.0.2.3.0.0-2557: Could not transfer artifact org.apache.storm:storm-core:pom:0.10.0.2.3.0.0-2557 from/to apache-hadoop (http://nexus-private.hortonworks.com/nexus/content/groups/public): Connect to nexus-private.hortonworks.com:80 [nexus-private.hortonworks.com/54.173.242.72] failed: Connection timed out (Connection timed out) -> [Help 1]
一些调试配置:
[root@HW001 ~]# java -version
openjdk version "1.8.0_151"
OpenJDK Runtime Environment (build 1.8.0_151-b12)
OpenJDK 64-Bit Server VM (build 25.151-b12, mixed mode)
[root@HW001 ~]#
[root@HW001 ~]#
[root@HW001 ~]#
[root@HW001 Downloads]# g++ --version
g++ (GCC) 4.8.5 20150623 (Red Hat 4.8.5-39)
Copyright (C) 2015 Free Software Foundation, Inc.
This is free software; see the source for copying conditions. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
[root@HW001 ~]#
[root@HW001 ~]#
[root@HW001 ~]#
[root@HW001 ~]# mvn -v
Apache Maven 3.0.5 (Red Hat 3.0.5-17)
Maven home: /usr/share/maven
Java version: 1.8.0_151, vendor: Oracle Corporation
Java home: /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.151-1.b12.el7_4.x86_64/jre
Default locale: en_US, platform encoding: UTF-8
OS name: "linux", version: "3.10.0-693.11.1.el7.x86_64", arch: "amd64", family: "unix"
[root@HW001 ~]#
[root@HW001 ~]#
[root@HW001 ~]#
[root@HW001 ~]# npm --version
3.10.10
[root@HW001 ~]#
[root@HW001 ~]#
[root@HW001 ~]#
[root@HW001 ~]# python --version
Python 2.7.5
[root@HW001 ~]#
[root@HW001 ~]#
[root@HW001 ~]#
[root@HW001 ~]# pip --version
pip 8.1.2 from /usr/lib/python2.7/site-packages (python 2.7)
[root@HW001 ~]#
[root@HW001 ~]#
[root@HW001 ~]#
[root@HW001 ~]# easy_install --version
setuptools 0.9.8
[root@HW001 ~]#
[root@HW001 ~]#
[root@HW001 ~]#
[root@HW001 ~]# yum list installed | grep rpm-build
rpm-build.x86_64 4.11.3-40.el7 @base
rpm-build-libs.x86_64 4.11.3-40.el7 @base
[root@HW001 ~]#
[root@HW001 ~]#
[root@HW001 ~]#
[root@HW001 ~]# node --version
v6.17.1
[root@HW001 ~]#
[root@HW001 ~]#
[root@HW001 ~]#
[root@HW001 ~]# npm list -g | grep brunch
├─┬ brunch@2.10.17
│ │ ├── brunch-skeletons@0.1.6
│ ├─┬ serve-brunch@0.2.1
经过一些调试后,发现有 2 个问题(#2 对你来说可能不是问题,稍后会解释):
1) 需要添加另一个存储库。使用在另一个 post.
中找到的解决方案的 变体
The repository configured by Ambari is nexus-private.hortonworks.com, but the address is inaccessible. Solution: Set https://repo.hortonworks.com/content/groups/public/ to the repository address, which contains the required dependencies.
所以在构建之前在项目的 pom.xml
文件中,我添加...
....
<repositories>
....
<repository>
<id>Spring Plugins</id>
<url>https://repo.spring.io/plugins-release/</url>
</repository>
<repository>
<id>nexus-hortonworks</id>
<url>https://repo.hortonworks.com/content/groups/public/</url>
</repository>
</repositories>
....
2) 在上面的 pom.xml
片段中,我还添加了另一个通常不在其中的存储库 Spring Plugins
。这是因为我从 nexus-hortonworks
存储库中收到一些名为 ringer-cors
的工件的错误。为什么 maven 在那里看?似乎是由于这个事实,我最初在 $M2_HOME/conf/setting.xml
文件中将 nexus-hortonworks 存储库指定为 mirror,用于 central
以外的所有内容,例如。 mirrorOf
值为 *,!central
(如链接到 #1 的解决方案所建议的那样)。
Could not find artifact ring-cors:ring-cors:jar:0.1.5 in nexus-hortonworks
我假设 maven 在检查项目 pom 中的存储库之前的镜像时出现了一些问题,没有找到 ringer-cors
并放弃或者有设置或项目 pom 中的任何地方都没有合适的 repos 来获取 ringer-cors
工件。因此,我从 maven repo site 中获取了有关 maven 存储库 ringer-cors
的信息,从设置文件中取出 nexus-hortonworks
并将项目 pom.xml
编辑为如上所示。 (如果这是一个错误的解释,请有更多行家经验的人告诉我)。
正在尝试通过 docs
从源代码在 CentOS 7 上构建 apache ambari v2.7.3获取错误:
[ERROR] Failed to execute goal on project ambari-metrics-storm-sink-legacy: Could not resolve dependencies for project org.apache.ambari:ambari-metrics-storm-sink-legacy:jar:2.7.3.0.0: Failed to collect dependencies at org.apache.storm:storm-core:jar:0.10.0.2.3.0.0-2557: Failed to read artifact descriptor for org.apache.storm:storm-core:jar:0.10.0.2.3.0.0-2557: Could not transfer artifact org.apache.storm:storm-core:pom:0.10.0.2.3.0.0-2557 from/to apache-hadoop (http://nexus-private.hortonworks.com/nexus/content/groups/public): Connect to nexus-private.hortonworks.com:80 [nexus-private.hortonworks.com/54.173.242.72] failed: Connection timed out (Connection timed out) -> [Help 1]
一些调试配置:
[root@HW001 ~]# java -version
openjdk version "1.8.0_151"
OpenJDK Runtime Environment (build 1.8.0_151-b12)
OpenJDK 64-Bit Server VM (build 25.151-b12, mixed mode)
[root@HW001 ~]#
[root@HW001 ~]#
[root@HW001 ~]#
[root@HW001 Downloads]# g++ --version
g++ (GCC) 4.8.5 20150623 (Red Hat 4.8.5-39)
Copyright (C) 2015 Free Software Foundation, Inc.
This is free software; see the source for copying conditions. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
[root@HW001 ~]#
[root@HW001 ~]#
[root@HW001 ~]#
[root@HW001 ~]# mvn -v
Apache Maven 3.0.5 (Red Hat 3.0.5-17)
Maven home: /usr/share/maven
Java version: 1.8.0_151, vendor: Oracle Corporation
Java home: /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.151-1.b12.el7_4.x86_64/jre
Default locale: en_US, platform encoding: UTF-8
OS name: "linux", version: "3.10.0-693.11.1.el7.x86_64", arch: "amd64", family: "unix"
[root@HW001 ~]#
[root@HW001 ~]#
[root@HW001 ~]#
[root@HW001 ~]# npm --version
3.10.10
[root@HW001 ~]#
[root@HW001 ~]#
[root@HW001 ~]#
[root@HW001 ~]# python --version
Python 2.7.5
[root@HW001 ~]#
[root@HW001 ~]#
[root@HW001 ~]#
[root@HW001 ~]# pip --version
pip 8.1.2 from /usr/lib/python2.7/site-packages (python 2.7)
[root@HW001 ~]#
[root@HW001 ~]#
[root@HW001 ~]#
[root@HW001 ~]# easy_install --version
setuptools 0.9.8
[root@HW001 ~]#
[root@HW001 ~]#
[root@HW001 ~]#
[root@HW001 ~]# yum list installed | grep rpm-build
rpm-build.x86_64 4.11.3-40.el7 @base
rpm-build-libs.x86_64 4.11.3-40.el7 @base
[root@HW001 ~]#
[root@HW001 ~]#
[root@HW001 ~]#
[root@HW001 ~]# node --version
v6.17.1
[root@HW001 ~]#
[root@HW001 ~]#
[root@HW001 ~]#
[root@HW001 ~]# npm list -g | grep brunch
├─┬ brunch@2.10.17
│ │ ├── brunch-skeletons@0.1.6
│ ├─┬ serve-brunch@0.2.1
经过一些调试后,发现有 2 个问题(#2 对你来说可能不是问题,稍后会解释):
1) 需要添加另一个存储库。使用在另一个 post.
中找到的解决方案的 变体The repository configured by Ambari is nexus-private.hortonworks.com, but the address is inaccessible. Solution: Set https://repo.hortonworks.com/content/groups/public/ to the repository address, which contains the required dependencies.
所以在构建之前在项目的 pom.xml
文件中,我添加...
....
<repositories>
....
<repository>
<id>Spring Plugins</id>
<url>https://repo.spring.io/plugins-release/</url>
</repository>
<repository>
<id>nexus-hortonworks</id>
<url>https://repo.hortonworks.com/content/groups/public/</url>
</repository>
</repositories>
....
2) 在上面的 pom.xml
片段中,我还添加了另一个通常不在其中的存储库 Spring Plugins
。这是因为我从 nexus-hortonworks
存储库中收到一些名为 ringer-cors
的工件的错误。为什么 maven 在那里看?似乎是由于这个事实,我最初在 $M2_HOME/conf/setting.xml
文件中将 nexus-hortonworks 存储库指定为 mirror,用于 central
以外的所有内容,例如。 mirrorOf
值为 *,!central
(如链接到 #1 的解决方案所建议的那样)。
Could not find artifact ring-cors:ring-cors:jar:0.1.5 in nexus-hortonworks
我假设 maven 在检查项目 pom 中的存储库之前的镜像时出现了一些问题,没有找到 ringer-cors
并放弃或者有设置或项目 pom 中的任何地方都没有合适的 repos 来获取 ringer-cors
工件。因此,我从 maven repo site 中获取了有关 maven 存储库 ringer-cors
的信息,从设置文件中取出 nexus-hortonworks
并将项目 pom.xml
编辑为如上所示。 (如果这是一个错误的解释,请有更多行家经验的人告诉我)。