plugins { id 'org.asciidoctor.jvm.convert' id 'org.asciidoctor.jvm.pdf' id 'org.springframework.boot.conventions' id 'org.springframework.boot.internal-dependency-management' id 'org.springframework.boot.maven-plugin' id 'org.springframework.boot.optional-dependencies' } description = "Spring Boot Maven Plugin" configurations { documentation } dependencies { api platform(project(':spring-boot-project:spring-boot-parent')) compileOnly 'org.apache.maven.plugin-tools:maven-plugin-annotations' compileOnly 'org.sonatype.plexus:plexus-build-api' implementation project(':spring-boot-project:spring-boot-tools:spring-boot-loader-tools') implementation 'org.apache.maven.shared:maven-common-artifact-filters' implementation 'org.apache.maven:maven-plugin-api' intTestImplementation platform(project(':spring-boot-project:spring-boot-parent')) intTestImplementation 'org.apache.maven.shared:maven-invoker' intTestImplementation 'org.assertj:assertj-core' intTestImplementation 'org.junit.jupiter:junit-jupiter' optional platform(project(':spring-boot-project:spring-boot-parent')) optional 'org.apache.maven.plugins:maven-shade-plugin' runtimeOnly 'org.sonatype.plexus:plexus-build-api' testImplementation 'org.assertj:assertj-core' testImplementation 'org.junit.jupiter:junit-jupiter' testImplementation 'org.mockito:mockito-core' testImplementation 'org.springframework:spring-core' } syncDocumentationSourceForAsciidoctor { from(documentPluginGoals) { into 'asciidoc/goals' } } asciidoctor { sources { include 'index.adoc' } } syncDocumentationSourceForAsciidoctorPdf { from(documentPluginGoals) { into 'asciidoc/goals' } } asciidoctorPdf { sources { include 'index.adoc' } } tasks.withType(org.asciidoctor.gradle.jvm.AbstractAsciidoctorTask) { attributes 'maven-jar-plugin-version': '1.2.3', 'maven-failsafe-plugin-version': '1.2.3', 'build-helper-maven-plugin-version': '1.2.3' } task zip(type: Zip) { dependsOn asciidoctor, asciidoctorPdf duplicatesStrategy 'fail' from(asciidoctorPdf.outputDir) { into 'pdf' } from(asciidoctor.outputDir) { into 'html' } } prepareMavenBinaries { versions '3.6.2', '3.5.4' } artifacts { 'documentation' zip }