使用 Gradle 将 .md 文件转换为 .pdf
Convert .md file into .pdf using Gradle
我一直在寻找一种使用 gradle 任务将我的 readme.md 文件自动转换为 .pdf 的方法。我知道我可以通过使用我的提示控制台来做到这一点,而且它工作正常,但我想知道是否有一种方法可以通过创建 gradle 任务来做到这一点。我找到了一些 gitHub 项目,并尝试了其中一些,但在应用所需的插件时总是出错。有一种简单的方法可以做到这一点,我知道 gradle 有大量的任务类型,但我找不到一个。有人可以帮助我吗?
我尝试使用 https://github.com/fntsoftware/gradle-plugin-markdown2pdf 的插件,但是当我 运行 实现 gradle 任务时,我收到错误:
无法为 org.gradle.api.Project
类型的根项目 'cms' 获取未知 属性 'MarkdownToPdfTask'
我的构建 gradle 来自根路径:
plugins {
id 'java'
id 'war'
id 'jacoco'
id 'eclipse'
id "fr.putnami.gwt" version "0.4.0"
id "info.solidsoft.pitest" version "1.3.0"
id "de.fntsoftware.gradle.markdown-to-pdf" version "1.1.0"
}
repositories {
mavenCentral()
maven {
url 'https://plugins.gradle.org/m2/'
}
}
dependencies {
testCompile 'junit:junit:4.12'
testCompile 'org.easymock:easymock:2.5.2'
testCompile 'com.google.gwt:gwt-dev:2.8.1'
compile 'net.sourceforge.plantuml:plantuml:8001'
}
task exampleTask1(type: MarkdownToPdfTask){
inputFile = '/PATH/TO/README.md'
outputFile = '/PATH/TO/README.pdf'
}
我的构建 gradle 来自 buildSrc 路径:
plugins {
id "de.fntsoftware.gradle.markdown-to-pdf" version "1.1.0"
}
repositories {
mavenCentral()
maven {
url 'https://plugins.gradle.org/m2/'
}
}
dependencies {
// compile gradleApi()
compile 'org.codehaus.groovy:groovy:2.4.2'
compile 'commons-io:commons-io:2.4'
compile 'net.sourceforge.plantuml:plantuml:8051'
}
谢谢。
MarkdownToPdfTask
是一个 class,因为它不在 Gradle 命名空间中(它来自第 3 方插件),所以需要对其进行限定。我可以看到文档没有提到这一点,但请尝试将以下内容放在脚本的顶部:
import de.fntsoftware.gradle.MarkdownToPdfTask
否则Gradle认为是属性.
我一直在寻找一种使用 gradle 任务将我的 readme.md 文件自动转换为 .pdf 的方法。我知道我可以通过使用我的提示控制台来做到这一点,而且它工作正常,但我想知道是否有一种方法可以通过创建 gradle 任务来做到这一点。我找到了一些 gitHub 项目,并尝试了其中一些,但在应用所需的插件时总是出错。有一种简单的方法可以做到这一点,我知道 gradle 有大量的任务类型,但我找不到一个。有人可以帮助我吗?
我尝试使用 https://github.com/fntsoftware/gradle-plugin-markdown2pdf 的插件,但是当我 运行 实现 gradle 任务时,我收到错误: 无法为 org.gradle.api.Project
类型的根项目 'cms' 获取未知 属性 'MarkdownToPdfTask'我的构建 gradle 来自根路径:
plugins {
id 'java'
id 'war'
id 'jacoco'
id 'eclipse'
id "fr.putnami.gwt" version "0.4.0"
id "info.solidsoft.pitest" version "1.3.0"
id "de.fntsoftware.gradle.markdown-to-pdf" version "1.1.0"
}
repositories {
mavenCentral()
maven {
url 'https://plugins.gradle.org/m2/'
}
}
dependencies {
testCompile 'junit:junit:4.12'
testCompile 'org.easymock:easymock:2.5.2'
testCompile 'com.google.gwt:gwt-dev:2.8.1'
compile 'net.sourceforge.plantuml:plantuml:8001'
}
task exampleTask1(type: MarkdownToPdfTask){
inputFile = '/PATH/TO/README.md'
outputFile = '/PATH/TO/README.pdf'
}
我的构建 gradle 来自 buildSrc 路径:
plugins {
id "de.fntsoftware.gradle.markdown-to-pdf" version "1.1.0"
}
repositories {
mavenCentral()
maven {
url 'https://plugins.gradle.org/m2/'
}
}
dependencies {
// compile gradleApi()
compile 'org.codehaus.groovy:groovy:2.4.2'
compile 'commons-io:commons-io:2.4'
compile 'net.sourceforge.plantuml:plantuml:8051'
}
谢谢。
MarkdownToPdfTask
是一个 class,因为它不在 Gradle 命名空间中(它来自第 3 方插件),所以需要对其进行限定。我可以看到文档没有提到这一点,但请尝试将以下内容放在脚本的顶部:
import de.fntsoftware.gradle.MarkdownToPdfTask
否则Gradle认为是属性.