在ubuntu上安装CloudStack时解决构建时依赖性时出错。

时间:2013-10-11 17:10:31

标签: maven apache-cloudstack

我在ubuntu上安装cloudstack,它使用maven来解析它的依赖关系。运行命令mvn -P deps

时出现以下错误
[ERROR] The build could not read 1 project -> [Help 1] 
[ERROR]    
[ERROR]   The project org.apache.cloudstack:cloudstack:4.2.0 (/home/cloud/apache-cloudstack-4.2.0-src/pom.xml) has 1 error 
[ERROR]     Non-resolvable parent POM: Could not transfer artifact org.apache:apache:pom:11 from/to central (http://repo.maven.apache.org/maven2): repo.maven.apache.org: Name or service not known and 'parent.relativePath' points at wrong local POM @ line 14, column 11: Unknown host repo.maven.apache.org: Name or service not known -> [Help 2] 
[ERROR] 

我已经搜索了错误并在pom.xml中尝试了一些更改,但我没有得到解决方案。我不知道导致错误的是什么。

任何建议或最轻微的帮助都将得到承认。谢谢。

4 个答案:

答案 0 :(得分:16)

这是一个网络问题:

您的构建计算机无法访问http://repo.maven.apache.org/maven2

在命令行中使用wget检查您是否可以访问该网站。 E.g。

root@mgmtserver:~/cm# wget http://repo.maven.apache.org/maven2
--2013-10-14 16:33:24--  http://repo.maven.apache.org/maven2
Resolving repo.maven.apache.org (repo.maven.apache.org)... 185.31.19.184, 185.31.19.185
Connecting to repo.maven.apache.org (repo.maven.apache.org)|185.31.19.184|:80... connected.
HTTP request sent, awaiting response... 301 Moved Permanently
Location: http://central.maven.org/maven2/ [following]
--2013-10-14 16:33:24--  http://central.maven.org/maven2/
Resolving central.maven.org (central.maven.org)... 185.31.19.184, 185.31.19.185
Reusing existing connection to repo.maven.apache.org:80.
HTTP request sent, awaiting response... 200 OK
Length: 967 [text/html]
Saving to: `maven2'

100%[=====================================================>] 967         --.-K/s   in 0s

2013-10-14 16:33:24 (74.4 MB/s) - `maven2' saved [967/967]

wget可能失败的原因:

  1. Maven回购暂时失败。等到它工作。
  2. 您的构建计算机上没有网络适配器。检查它是否具有网络访问权限。
  3. 您的代理设置不正确。 Try this solutionthe Maven mini-guide proxy settings
  4. <强>背景

    Apache CloudStack的POM.xml继承了Apache Software Foundation Parent POM的预定义值。因此,Maven构建首先从网络位置下载所需的POM,Maven将其本地存储在Maven repository中,这是一种本地缓存。

    最后评论:

    如果您感到好奇,下载POM的来源是here

答案 1 :(得分:4)

问题是我使用的是代理网络,maven没有配置相同的。 所以我在apache-maven-3.0.5 / conf / settings.xml中进行了更改 请参阅此链接以了解更多信息http://maven.apache.org/guides/mini/guide-proxies.html

答案 2 :(得分:1)

如果您遇到此问题,但同时可以使用浏览器访问该网址,则在mvn clean之前执行mvn install可能会解决问题。这解决了我的问题。

答案 3 :(得分:0)

我不知道为什么,但由于这对我有用,我分享它希望节省某人的时间:

我在以前被其他人使用过的Windows7上,我发现了

  

%MAVEN_HOME%\ conf \ settings.xml

包含以下行:

<localRepository>C:/m2/repository</localRepository>

可能会在不同用户之间共享存储库。
这导致了问题,因为当我将该行更改为:

<localRepository>C:/Users/my_user_name/.m2/repository</localRepository>

,它开始完美运作!从命令行,Eclipse与外部Maven,以及Eclipse与嵌入式。

在此之前,没有任何工件解决方案正常工作。

可能这与在根文件夹下编写权限有关...

希望有所帮助。