1

ビルド済みの jar を Gradle から Maven に公開することについて、Stackoverflow には既に質問があります。ただし、これは少し異なります。ビルド済みの Jar を Maven リポジトリに公開し、同時に pom.xml ファイルに含める依存関係を提供するにはどうすればよいですか?

このスクリプトの外部でビルド済みの jar があります。この jar を Maven リポジトリ (Nexus) に公開し、pom.xml で依存関係を指定する必要があります。アーティファクト クロージャーを使用して Maven リポジトリに公開されたビルド済みの jar を取得できましたが、依存関係クロージャーは無視されます。Java プラグインを追加すると、Maven プラグインは依存関係を持つ pom を作成しますが、ゼロバイトの jar ファイルをアップロードします。これは、Java プラグインが、このプロジェクトには存在しない src ディレクトリにソースをコンパイルしてパッケージ化することを想定しているためだと思います。

ビルド済みの Jar を Java プラグイン プロセスに「注入」して、jar を依存関係と共にアップロードできるようにする方法はありますか? それとも、明らかな何かが欠けていますか?

もちろん、ビルド済みの Jar のビルド プロセスでその依存関係を概説し、Maven にアップロードするのが最善ですが、残念ながらそれはサード パーティ製のソフトウェアであり、私たちには制御できません。

以下のスクリプトは、ゼロ KB の jar ファイルを公開します...

apply plugin: 'java'
apply plugin: 'maven'
jar = file(projectHome + '/build/lib').listFiles()[0]
configurations {
    archives
    runtime
}
dependencies {
    runtime 'org.apache.tika:tika-app:1.3'
}
artifacts {
    archives jar
}
uploadArchives {
    repositories {
        mavenDeployer {
            repository(url: "http://build.com/nexus/content/repositories/releases/")
            pom.version = tag
            pom.artifactId = "artifact"
            pom.groupId = "group"
        }
    }
} 

どうもありがとう!ロブ

4

1 に答える 1