私は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でいくつかの変更を試みましたが、解決策が得られません。エラーの原因がわかりません。
どんな提案や少しの助けでも認められます。ありがとうございました。
これはネットワーキングの問題です:
ビルドマシンがアクセスできない http://repo.maven.Apache.org/maven2
コマンドラインでwget
を使用して、Webサイトにアクセスできるかどうかを確認します。例えば。
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
が失敗する理由:
背景:
Apache CloudStackのPOM.xmlは Apache Software Foundation Parent POM から事前定義された値を継承します。その結果、Mavenビルドは最初に必要なPOMをネットワークの場所からダウンロードし、Mavenはローカルキャッシュの一種である Mavenリポジトリ にローカルに保存します。
最後のコメント:
興味があれば、ダウンロードするPOMのソースは here です。
問題は、プロキシネットワークを使用していて、Mavenが同じように構成されていないことでした。そのため、Apache-maven-3.0.5/conf/settings.xmlに変更を加えました。詳細については、このリンクを参照してください http://maven.Apache.org/guides/mini/guide-proxies.html
この問題が発生したが、同時にブラウザを使用してURLにアクセスできる場合は、mvn clean
前 mvn install
で問題が解決する場合があります。これは私の問題を解決しました。
なぜなのかわかりませんが、これは私のために機能したので、誰かの時間を節約することを望んでそれを共有しています:
以前は他の人が使用していたWindows7を使用していて、
%MAVEN_HOME%\ conf\settings.xml
次の行が含まれていました:
<localRepository>C:/m2/repository</localRepository>
おそらく、異なるユーザー間でリポジトリを共有するためです。
行を次のように変更したため、これが問題の原因でした:
<localRepository>C:/Users/my_user_name/.m2/repository</localRepository>
、完全に機能し始めました!コマンドラインから、外部Mavenを使用したEclipseから、および組み込みのものを使用したEclipseから。
これ以前は、アーティファクト解決は機能していませんでした。
たぶん、それはルートフォルダの下の書き込み権限に関連したものだった...
お役に立てば幸いです。