1

Jenkins の設定に苦労しています。

同じsvn-repositoryから別の場所からチェックアウトしたいので、複数のSVN-Modulesでjenkins-jobを定義しました。

チェックアウトごとにオプションの module-directoryを定義する必要があります。これを設定しないと、Jenkins は同じディレクトリ内のすべてのモジュールをチェックアウトし、常に .svn-directory を上書きします (その結果、すべてのファイルが削除されます)。前にチェックアウトしました)。

したがって、チェックアウトごとにオプションのディレクトリを設定します。そして、この時点から、たとえばEclipseワークスペースですべてのパッケージをチェックアウトするときに使用するフォルダー構造とは異なります。フラットな階層があるからです。

したがって、jenkins と開発の間でrelativePathが異なる場合、pom.xml で同じrelativePathを使用して親を定義することはできません。

Example:

Jenkins (Tree-hierarchie): <relativePath>../<optionalModuleDir>/pom.xml</relativePath>

Eclipse-Workspace(Flat hierarchie): <relativePath>../pom.xml</relativePath>

プロファイルを使用しようとしましたが、親のrelativePathではなく、プロファイルにモジュールのみを設定できます。

2 つの異なる親relativePathで同じ pom.xml を使用するにはどうすればよいですか? または、問題を解決するために代わりに何をすべきですか?

4

1 に答える 1

2

回避策として、Maven ビルドを次のように変更します。

  • ビルド前のステップ「シェルの実行」/「Windows バッチ コマンドの実行」を追加します。
  • これに、すべてを所定の位置に移動するコマンド、または必要な構造を作成するためのシンボリック リンクを作成するコマンドを含むスクリプトを追加します。

ビルドが開始されると、チェックアウト後にソースが必要な構造に取り込まれ、ビルド自体が実行されます。

于 2012-12-12T13:25:15.490 に答える