Я использовал плагин Gradle 'gradle.plugin.de.fntsoftware.gradle: markdown-to-pdf: 1.1.0' для преобразования MarkDown в PDF. По большей части это работало очень хорошо. У меня возникают трудности с добавлением расширения таблиц. Я верю Я следовал инструкциям (https://github.com/fntsoftware/gradle-plugin-markdown2pdf) правильно.
Я получаю сообщение об ошибке с именем свойства одного конвертера. Не могу понять, какотладить это! Я считаю, что сократил это до переносимой проблемы, которую мог бы воспроизвести лучший мастер Gradle, чем я (это может быть кто угодно!).
У меня есть один файл Markdown, содержимое которого является единственнымслово «включено» (чтобы минимизировать вероятность того, что проблема вызвана синтаксическими ошибками в уценке.)
Мой скрипт сборки размещен ниже. Ошибка, использующая Gradle 5.6.2 и JDK 8u191-x64,это:
c:\jdev\sc2\shunpike\1\shunpike\d2>gradle build --no-daemon
FAILURE: Build failed with an exception.
* Where:
Build file 'C:\jdev\sc2\shunpike\1\shunpike\d2\build.gradle' line: 25
* What went wrong:
A problem occurred evaluating root project 'd2'.
> FORMAT_TABLE_TRIM_CELL_WHITESPACE
* Try:
Run with --stacktrace option...
build.gradle (строка ошибки - строка Arrays.asList (TablesExtension.create ())):
buildscript {
repositories {
maven { url uri('https://plugins.gradle.org/m2')}
}
dependencies {
classpath 'gradle.plugin.de.fntsoftware.gradle:markdown-to-pdf:1.1.0',
'com.vladsch.flexmark:flexmark-all:0.50.40'
}
}
apply plugin: 'de.fntsoftware.gradle.markdown-to-pdf'
import org.apache.tools.ant.filters.*
import com.vladsch.flexmark.ext.tables.TablesExtension
import com.vladsch.flexmark.parser.Parser
task build
project.fileTree([dir: '.', include: '*.md']).files.each { file ->
def baseFilename = file.name.take(file.name.lastIndexOf('.'))
def taskName = baseFilename.toLowerCase()
def pdfTask = project.tasks.create("${taskName}ToPDF",
de.fntsoftware.gradle.MarkdownToPdfTask) {
setOption(Parser.EXTENSIONS,
Arrays.asList(TablesExtension.create()))
}
pdfTask.inputFile = "${baseFilename}.md"
pdfTask.outputFile = "$buildDir/pdf/${baseFilename}.pdf"
build.dependsOn pdfTask
//System.out.println("Created task $taskName")
}