如何配置 asciidoctor-gradle-plugin 来处理 plantuml?

问题描述 投票:0回答:3

我不懂 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?

ruby gradle plantuml asciidoctor
3个回答
1
投票

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
)。 我认为他的博客网站相当可靠,所以我不会详细介绍。


0
投票

我也遇到了同样的问题,原因是我错过了线路

gemPath = jrubyPrepare.outputDir

这似乎将宝石存储的路径传达给了 asciidoctor 任务

或者至少这使得

no such file to load
问题消失,然后我收到了一个关于找不到 graphviz 的错误,我可以通过在我的机器上安装 graphviz 来修复该错误。


0
投票

现在可以按照以下方式工作:

asciidoctorj {
    modules {
        diagram.use()
    }
}

参见:https://asciidoctor.github.io/asciidoctor-gradle-plugin/master/user-guide/#diagram

© www.soinside.com 2019 - 2024. All rights reserved.