2

Gradleを使用して、すべての依存関係と推移的な依存関係を持つMavenリポジトリを生成する方法を探しています。

たとえば、私のプロジェクトは休止状態に依存する可能性があります。Hibernateと独自の依存関係を持つディスク上のどこかにローカルリポジトリを作成したいと思います。

私はいくつかの方法を試しましたが、成功しませんでした。

  • uploadArtifact:アーティファクトの依存関係をアップロードできないようです
  • 同期タスク:Mavenメタデータがなく、推移的な依存関係が失われます

コンテキスト:私の製品にはエンジンとWebアプリがあり、Warアーカイブ、EARアーカイブ、またはWebアプリなし、コンポーネントの有無にかかわらずデプロイできます。必要なものを構成する方法と、それを生成するためのスクリプトをユーザーに提供する必要があります。Gradleは良い候補のようですが、必要になる可能性のあるすべての依存関係を使用してローカルリポジトリを作成する方法がわかりません。

誰かが解決策を見ますか?

ありがとうございました

4

2 に答える 2

2

現在、Gradleでこれを実現する簡単な方法はありません。独自のソリューションをスクリプト化する必要があります。特に、アーカイブを公開するときに元のPOMを再作成する方法を見つける必要があります。

于 2012-11-22T11:57:22.033 に答える
0

他の人が使用できる解決策を見つけました。アイデア:mavenを使用してリポジトリを生成し、アセンブリプラグインを使用してプロジェクトをzipとしてパッケージ化します。私はMavenを偽造します:

<repositories>
    <repository>
        <id>my-internal-site</id>
        <url>file://${user.home}/.m2/repository</url>
    </repository>
</repositories>

そしてそれをそのように呼びます:

mvn install -Dmaven.repo.local=./src/lib/

pomには主な依存関係が含まれ、srcdirには「バンドル」に含める他のすべてのものが含まれます

于 2012-11-22T14:14:44.713 に答える