Как автоматически сгенерировать pom-файл во время сборки для загрузки в репозиторий maven2?

#java #gradle #maven-2

#java #gradle #maven-2

Вопрос:

Я ищу gradle для создания чистого pom-файла с самыми необходимыми элементами, такими как зависимости, чтобы я мог загружать его в jar, sources.jar, и javadoc.jar.

Я также не хочу создавать pom вручную.

Ответ №1:

Взгляните на публикацию, в частности с maven-publish плагином, который действительно обрабатывает это за вас.

Но для того, чтобы иметь минимальную публикацию, это просто, как:

 plugins {
    `java`
    `maven-publish`
}

group = "org.example"
version = "1.0"

// dependencies declaration omitted

publishing {
    publications {
        create<MavenPublication>("myLibrary") {
            from(components["java"])
        }
    }

    repositories {
        maven {
            name = "myRepo"
            url = uri("file://${buildDir}/repo")
        }
    }
}
  

Примечание: Здесь используется Kotlin DSL, версия Groovy имеет пару отличий, смотрите документацию

И затем запуск ./gradlew publish опубликует org.example:<project-name>:1.0