1

マスター マシンで Maven を実行する Jenkins ジョブがあります

Sonar を実行するビルド後のステップを追加し、プロジェクトのpom.xml.

問題は、Jenkins ビルドがマスターで実行され、Sonar サーバーが別のマシンで実行されていることです。そのため、ビルドが完了すると、Sonar は、Jenkins が Maven を実行したマスター マシンではなく、Sonar がインストールされているリポジトリでビルド アーティファクトを探します。

Sonar と Jenkins の両方を同じマシンにインストールする以外に回避策はありますか?

詳細:

[ERROR] Failed to execute goal on project server-api: Could not resolve dependencies for project frm:frm-server-api:jar:1.0-SNAPSHOT: Failure to find frm:frm-model:jar:1.0-SNAPSHOT in http://DIFFERENT_SERVER:7080/nexus/content/repositories/releases/ was cached in the local repository, resolution will not be reattempted until the update interval of releases has elapsed or updates are forced -> [Help 1]

は、サーバーまたはサーバーにDIFFERENT_SERVER関連しないサーバーです。使用していますが、このプロジェクトのコンテキストでは使用していないため、どのようにしてそこに到達したかはよくわかりません。これは設定ミスだと思います。詳細:sonarJenkins

  1. Jenkins ジョブ タイプは一般的なプロジェクトであり、純粋な Maven ジョブではありません。
  2. 私はsonarビルド後のトリガーとしてjenkinsプラグインを使用し、使用しているものを指定していpom.xmlます。
  3. 必要な詳細を設定settings.xmlしました。MAVEN_HOME/conf
4

2 に答える 2

2

Sonar サーバーが別のマシンで実行されているという事実は、分析を開始する上で問題になることはありません。また、Jenkins マスターから Sonar 分析を実行しても問題はありません。Sonar DB および/または Sonar サーバーがオンになっている可能性があります。異なるマシン。

Jenkins の構成 (= Sonar のプロパティ) + マシンの構成 (= 潜在的なファイアウォール) により、Sonar バッチで次のことができるようにする必要があります。

  1. Sonar Web サーバーの URL を照会する
  2. 構成されたデータベースを照会する
于 2012-05-31T12:12:58.573 に答える
2

私の問題は、プロジェクトに何も追加しなかったことと、ソナーがmavenリポジトリのアーティファクトに必要とするフェーズpom.xmlまでmavenを使用していたため、後で使用できることでした。packageinstall

だから私はmavenを実行しmvn clean install -DskipTests=true、後でソナーのポストビルドステップを使用しました。

于 2012-05-31T14:32:24.143 に答える