Skip to content

Commit 87d8aed

Browse files
committed
Use spring-pdf backend for PDF generation
Update `asciidoctorPdf` tasks to use the `spring-pdf` backend so that chomped elements and @fold:on/@fold:off comments are hidden. Closes gh-26373
1 parent 65db441 commit 87d8aed

File tree

6 files changed

+15
-20
lines changed

6 files changed

+15
-20
lines changed

buildSrc/build.gradle

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -18,8 +18,7 @@ dependencies {
1818
implementation("com.fasterxml.jackson.core:jackson-databind:2.11.4")
1919
implementation("commons-codec:commons-codec:1.13")
2020
implementation("org.apache.maven:maven-embedder:3.6.2")
21-
implementation("org.asciidoctor:asciidoctor-gradle-jvm:3.1.0")
22-
implementation("org.asciidoctor:asciidoctor-gradle-jvm-pdf:3.1.0")
21+
implementation("org.asciidoctor:asciidoctor-gradle-jvm:3.3.2")
2322
implementation("org.gradle:test-retry-gradle-plugin:1.1.9")
2423
implementation("org.jetbrains.kotlin:kotlin-gradle-plugin:1.5.0-RC")
2524
implementation("org.jetbrains.kotlin:kotlin-compiler-embeddable:1.5.0-RC")

buildSrc/src/main/java/org/springframework/boot/build/AsciidoctorConventions.java

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -98,6 +98,8 @@ private void createAsciidoctorExtensionsConfiguration(Project project) {
9898
Configuration asciidoctorExtensions = configurations.maybeCreate(EXTENSIONS_CONFIGURATION);
9999
asciidoctorExtensions.getDependencies().add(project.getDependencies()
100100
.create("io.spring.asciidoctor.backends:spring-asciidoctor-backends:0.0.1-SNAPSHOT"));
101+
asciidoctorExtensions.getDependencies()
102+
.add(project.getDependencies().create("org.asciidoctor:asciidoctorj-pdf:1.5.3"));
101103
Configuration dependencyManagement = configurations.findByName("dependencyManagement");
102104
if (dependencyManagement != null) {
103105
asciidoctorExtensions.extendsFrom(dependencyManagement);
@@ -111,7 +113,9 @@ private void configureAsciidoctorTask(Project project, AbstractAsciidoctorTask a
111113
asciidoctorTask.baseDirFollowsSourceDir();
112114
createSyncDocumentationSourceTask(project, asciidoctorTask);
113115
if (asciidoctorTask instanceof AsciidoctorTask) {
114-
configureAsciidoctorHtmlTask((AsciidoctorTask) asciidoctorTask);
116+
boolean pdf = asciidoctorTask.getName().toLowerCase().contains("pdf");
117+
String backend = (!pdf) ? "spring-html" : "spring-pdf";
118+
((AsciidoctorTask) asciidoctorTask).outputOptions((outputOptions) -> outputOptions.backends(backend));
115119
}
116120
}
117121

@@ -146,8 +150,4 @@ private Sync createSyncDocumentationSourceTask(Project project, AbstractAsciidoc
146150
return syncDocumentationSource;
147151
}
148152

149-
private void configureAsciidoctorHtmlTask(AsciidoctorTask asciidoctorTask) {
150-
asciidoctorTask.outputOptions((outputOptions) -> outputOptions.backends("spring-html"));
151-
}
152-
153153
}

spring-boot-project/spring-boot-actuator-autoconfigure/build.gradle

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,6 @@
11
plugins {
22
id "java-library"
33
id "org.asciidoctor.jvm.convert"
4-
id "org.asciidoctor.jvm.pdf"
54
id "org.springframework.boot.auto-configuration"
65
id "org.springframework.boot.conventions"
76
id "org.springframework.boot.deployed"
@@ -175,7 +174,7 @@ asciidoctor {
175174
}
176175
}
177176

178-
asciidoctorPdf {
177+
task asciidoctorPdf(type: org.asciidoctor.gradle.jvm.AsciidoctorTask) {
179178
sources {
180179
include "index.adoc"
181180
}

spring-boot-project/spring-boot-docs/build.gradle

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,6 @@ plugins {
22
id "java"
33
id "groovy"
44
id "org.asciidoctor.jvm.convert"
5-
id "org.asciidoctor.jvm.pdf"
65
id "org.springframework.boot.conventions"
76
id "org.springframework.boot.deployed"
87
}
@@ -257,7 +256,7 @@ asciidoctor {
257256
}
258257
}
259258

260-
asciidoctorPdf {
259+
task asciidoctorPdf(type: org.asciidoctor.gradle.jvm.AsciidoctorTask) {
261260
sources {
262261
include "*.singleadoc"
263262
}

spring-boot-project/spring-boot-tools/spring-boot-gradle-plugin/build.gradle

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,6 @@ plugins {
22
id "java-gradle-plugin"
33
id "maven-publish"
44
id "org.asciidoctor.jvm.convert"
5-
id "org.asciidoctor.jvm.pdf"
65
id "org.springframework.boot.conventions"
76
id "org.springframework.boot.maven-repository"
87
id "org.springframework.boot.optional-dependencies"
@@ -82,7 +81,7 @@ asciidoctor {
8281
attributes "stylesheet": "css/style.css"
8382
}
8483

85-
asciidoctorPdf {
84+
task asciidoctorPdf(type: org.asciidoctor.gradle.jvm.AsciidoctorTask) {
8685
sources {
8786
include "index.adoc"
8887
}

spring-boot-project/spring-boot-tools/spring-boot-maven-plugin/build.gradle

Lines changed: 6 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,5 @@
11
plugins {
22
id "org.asciidoctor.jvm.convert"
3-
id "org.asciidoctor.jvm.pdf"
43
id "org.springframework.boot.conventions"
54
id "org.springframework.boot.maven-plugin"
65
id "org.springframework.boot.optional-dependencies"
@@ -74,15 +73,15 @@ asciidoctor {
7473
}
7574
}
7675

77-
syncDocumentationSourceForAsciidoctorPdf {
78-
from(documentPluginGoals) {
79-
into "asciidoc/goals"
76+
task asciidoctorPdf(type: org.asciidoctor.gradle.jvm.AsciidoctorTask) {
77+
sources {
78+
include "index.adoc"
8079
}
8180
}
8281

83-
asciidoctorPdf {
84-
sources {
85-
include "index.adoc"
82+
syncDocumentationSourceForAsciidoctorPdf {
83+
from(documentPluginGoals) {
84+
into "asciidoc/goals"
8685
}
8786
}
8887

0 commit comments

Comments
 (0)