我不懂 Ruby,但我喜欢
asciidoctor
(以及 gradle 插件)。 有没有一种简单的方法可以让插件生成plantuml图?
我查看了基本的 asciidoctor-diagrams 功能,该功能似乎特定于使用本机/ruby asciidoctor 扩展(我没有,也不想安装,因为我喜欢使用 gradle 插件)。
做得很好的 asciidoctor-gradle-plugin 文档页面显示它接受 Ruby 模块的
requires
选项,但没有任何 Ruby 基础,我不确定这是否是我需要的。
我尝试了阻力最小的路径,即:
asciidoctor {
logDocuments = true
separateOutputDirs = false
sourceDir = file("src")
outputDir = file("$buildDir/html")
backends = [ 'html5' ]
requires "asciidoctor-diagram"
}
根据我的基本 plantuml 测试:
.The PlantUML block extension class
[plantuml, sample-plantuml-diagram, alt="Class diagram", width=135, height=118]
----
class BlockProcessor
class PlantUmlBlock
BlockProcessor <|-- PlantUmlBlock
----
但是得到:
* What went wrong:
Execution failed for task ':asciidoctor'.
> (LoadError) no such file to load -- asciidoctor-diagram
在配置阶段。
如何配置
asciidoctor-gradle-plugin
来处理 plantuml?
mrhaki 来救援。我不想完全抄袭他的帖子,但万一该链接出现问题,在 gradle 文件中还需要满足许多其他依赖项,而我首先没有这样做。没有是
com.github.jruby-gradle:jruby-gradle-plugin:0.1.5
然后他应用了两个插件,包括 com.github.jruby-gradle.base
并依赖 ruby gems (rubygems:asciidoctor-diagram:1.2.0
)。 我认为他的博客网站相当可靠,所以我不会详细介绍。
我也遇到了同样的问题,原因是我错过了线路
gemPath = jrubyPrepare.outputDir
这似乎将宝石存储的路径传达给了 asciidoctor 任务
或者至少这使得
no such file to load
问题消失,然后我收到了一个关于找不到 graphviz 的错误,我可以通过在我的机器上安装 graphviz 来修复该错误。
现在可以按照以下方式工作:
asciidoctorj {
modules {
diagram.use()
}
}
参见:https://asciidoctor.github.io/asciidoctor-gradle-plugin/master/user-guide/#diagram