0

svn リポジトリには、'product' フォルダーがあり、その下にすべての Eclipse プラグインと機能があり、これらと並行して親 POM があります。このセットアップは、Jenkins でビルドするときにうまく機能します。「product」をチェックアウトして、pom.xml をインストールするだけです。しかし、このセットアップが Eclipse ワークスペースでどのように機能するのかわかりませんか? pom.xml を単独でワークスペースにチェックアウトすることはできません。チェックアウトする場合は、親 POM へのパスをブレー​​キするプロジェクトの下で単一のファイルとしてチェックアウトする必要があります。そのようなセットアップをチェックアウトしてビルドするにはどうすればよいですか?

また、プラグインで親 POM の relativePath を定義する必要がありますか? 省略すると、パスが見つからないというエラーが発生することがわかりました。

要約すると、私の svn リポジトリ構造は次のとおりです。

  • レポ/
    • トランク/
      • product <- maven project (.project が maven nature として設定されたフォルダー)
        • プラグインA
        • プラグインB
        • 特徴A
        • pom.xml
        • 。事業
4

2 に答える 2

0

m2eclipse (たとえば、Juno サイトから入手可能) を使用する場合、任意の Maven プロジェクト構造を Eclipse にインポートできます。あなたの場合、製品フォルダーは、個々の機能とバンドルだけでなく、Eclipse プロジェクトとしてインポートされます。

<relativePath>デフォルトは..であるため、親 POM が親フォルダーにない場合は指定する必要があります。<relativePath/>親 POM がローカルで利用できない場合は、未定義に設定できます (たとえば、空のタグを介して)。この場合、Maven は常に、ローカルの Maven リポジトリまたは構成済みのリモート (Maven) リポジトリから親 POM を解決します。

于 2012-12-07T09:56:35.830 に答える
0

次の 2 つのオプションがあると思います。

  1. 親 POM をローカルで利用可能なリポジトリ (おそらく会社の Nexus サーバーなど) にデプロイしますか? これは、すべての製品とすべての同僚が利用できるようになります。

  2. プロジェクトを再構築して、Maven のように見えるようにします。

    |-- plugin1
       |-- pom.xml
       |-- ....
    |-- plugin2...
    |-- feature1...
    |-- ...
    pom.xml  <-- parent POM
    

    この 2 番目のオプションは、長期的にはより優れている可能性があります。それ以外の場合、Jenkins サーバーは、svn から単に取得するのではなく、更新された親 POM をローカルにインストールすることを忘れないでください。

于 2012-12-07T08:18:32.573 に答える