0

Java アプリケーションがあり、CLI で Maven を使用してコンパイルできます。Java コードをリモート サーバーにデプロイし、Maven を使用してコードをコンパイルするためのビルド スクリプトがいくつかありますが、ビルドを使用してコンパイル中にビルドが失敗します。ジェンキンスのスクリプト。リモート サーバーでコードをコンパイルしようとすると、ビルドは成功します。エラーログは次のとおりです。

[WARNING] The POM for org.im4java:im4java:jar:1.3.2 is missing, no dependency information available
[WARNING] The POM for com.aliyun:aliyun-openservices:jar:1.0.0-20120705 is missing, no dependency information available
[INFO] ------------------------------------------------------------------------
[INFO] Reactor Summary:
[INFO] 
[INFO] GuestPath Project ................................. SUCCESS [5.183s]
[INFO] guestchat biz module .............................. FAILURE [4.001s]
[INFO] GuestChat Web Common .............................. SKIPPED
[INFO] GuestChat Portal Webapp ........................... SKIPPED
[INFO] guestchat openapi Webapp .......................... SKIPPED
[INFO] guestchat chat server ............................. SKIPPED
[INFO] guestchat service dashboard Webapp ................ SKIPPED
[INFO] ------------------------------------------------------------------------
[INFO] BUILD FAILURE
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 10.518s
[INFO] Finished at: Wed Sep 19 10:49:39 CST 2012
[INFO] Final Memory: 9M/23M
[INFO] ------------------------------------------------------------------------
[ERROR] Failed to execute goal on project guestchat-biz:
Could not resolve dependencies for project com.guestops.guestchat:guestchat-biz:jar:1.0.0-SNAPSHOT:
The following artifacts could not be resolved:
org.im4java:im4java:jar:1.3.2, com.aliyun:aliyun-openservices:jar:1.0.0-20120705:
Failure to find org.im4java:im4java:jar:1.3.2 in http://repo.maven.apache.org/maven2
was cached in the local repository, resolution will not be reattempted until
the update interval of central has elapsed or updates are forced -> [Help 1]

私が十分に明確であることを願っています。どんな助けでも大歓迎です。必要に応じて詳細を提供できます..事前に感謝します!

4

4 に答える 4

2

次のことを試してみるべきだと思います。

  1. プロジェクトをローカルでコンパイルしてみてください。ただし、maven リポジトリからアーティファクトをダウンロードしていることを確認してください。~user/.m2/repository の名前を変更し、「mvn clean install」を実行することで、根本的にそれを行うことができます

  2. コンパイルされた場合 - ローカルの Maven は適切に構成されており、pom.xml の問題ではありません。また、リモートリポジトリはmavenで構成されています。この場合、jenkinsの問題、またはjenkinsと同じマシンにインストールされたmavenの問題、またはおそらくネットワーク/セキュリティ関連の問題(リモートリポジトリへの接続がファイアウォールで保護されており、jenkinsマシンからアクセスできないなど)です。

その Maven でリポジトリ構成をチェックアウトするか、jenkins マシンでプロジェクトのソース コードをチェックアウトし、そのマシンから上記の最初のステップを手動で実行することをお勧めします。コードをコンパイルできず、現在発生しているのと同じエラーが発生することがわかります。

ステップ 1 でプロジェクトをコンパイルできない場合は、不足しているモジュールに依存していて、それらが何らかの形でローカル リポジトリに存在していたためです (以前はローカルでコンパイルできたと思います)。クリーン インストールを実行すると、ローカル リポジトリが「パージされます」。この場合、依存関係がどこから来たのかを調べる必要があります。のようなもの

mvn 依存関係:失敗したモジュールのツリー

ここで役立つことがあります。

これが何らかの形で役立つことを願っています

于 2012-09-19T05:02:02.803 に答える
0

これは、エラーメッセージが示す内容です。

次のアーティファクトを解決できませんでした:org.im4java:im4java:jar:1.3.2、com.aliyun:aliyun-openservices:jar:1.0.0-20120705:org.im4java:im4java:jar:1.3.2が見つかりませんhttp://repo.maven.apache.org/maven2

したがって、pomにim4java1.3.2およびaliyun-openservices1.0.0-20120705の参照がありますが、これらは一般的なMavenリポジトリにはありません。mvnrepository.comでim4javaを検索するとバージョン1.2しかないことがわかるので、失敗するのは当然です。aliyun-openservicesパッケージはまったく存在しません。

それで、それらはどこにあるべきですか?たぶんあなたはそれらをローカルにのみインストールし、Jenkinsマシンにはインストールしていませんか?

そのときあなたができることはどちらかです

  1. (推奨)必要なライブラリをデプロイしてそれを参照するイントラネットMavenリポジトリを設定するか、または
  2. Jenkinsを実行しているマシンにローカルにインストールします

これらの両方で問題が解決するはずです。

于 2012-09-19T05:14:33.307 に答える
0

Maven リポジトリをざっと見てみると、バージョン 1.2.0 のみが利用可能であり、バージョン 1.3.2 (使用している) は利用できません。

コードは Maven ビルドでコンパイルされますか?

jenkinsインスタンスのリポジトリ設定を見直してみることをお勧めします

于 2012-09-19T05:19:44.747 に答える
0

2 つの可能な迅速な解決策:

  1. ローカルでコンパイルする場合は、Jenkins のビルド構成に移動し、「Poll SCM」オプションをチェックして、すべてのビルドでポーリングを行います。

  2. Jenkins サーバーのコマンド ラインから実行しmvn clean install、ビルド後にアーティファクトが Maven リポジトリで利用可能であることを確認します。そうでない場合は、関連するバージョンの jar をダウンロードし、ローカルの Maven リポジトリ (Jenkins サーバー上) に配置します。

幸運を!

于 2012-09-19T03:52:44.777 に答える