Intellij Idea AsciiDoc包含错误的图表

jw5wzhpr  于 2023-03-17  发布在  其他
关注(0)|答案(1)|浏览(115)

我在IntelliJ IDEA中使用AsciiDocPlant UML来编写文档。
在那里,我遇到了一个奇怪的问题,包括图表。我已经找到了一种方法,使它的工作,但我不明白为什么。我想知道为什么它的工作方式。
我使用下面的语句在页面上包含一个Plant UML图:

["plantuml","containers"]
----
include::../diagrams/containers.puml[]
----

然而,这并没有像预期的那样包含../diagrams/containers.puml,而是包含了一个与../external-references/diagrams/external-components.puml看起来不相关的资源不同的图,然后将其放大到../diagram/containers.puml '的大小。
出于某种原因,这种情况只发生在这一个include语句中,例如,下面包含了一个不同的PUML图,无论我把它放在AsciDoc中的什么位置,它都可以工作:

["plantuml","system-context"]
----
include::../diagrams/system-context.puml[]
----

现在,如前所述,我设法通过将整个语句更改为以下语句(删除标题中的",containers")来使其工作:

["plantuml"]
----
include::../diagrams/containers.puml[]
----

对我来说,这提出了两个问题:
1.为什么include对system-context.puml有效,但对containers.puml无效?
1.为什么它会受到语法第二部分的影响呢?我以为这是用于图像无法显示时的替代文本。

5sxhfpxr

5sxhfpxr1#

**解决方案:**删除或更改方括号中的"containers"参数。

出现这个问题是因为项目中的某个地方存在另一个名为"containers"的图(或文件)。
正如asciidoctor文档中所指定的,方括号中的第二个参数定义了一个目标输出文件名(在您的例子中是containers),我假设在渲染plantuml图表的过程中,asciidoctor创建并存储了一些图像文件(png,svg,或类似的东西),以便稍后嵌入。

["plantuml","containers"]
----
include::../diagrams/containers.puml[]
----

这里的“解剖图从asciidoddocs:

[diagram-type, target=output-file-name, format=output-format]   
.... 
Diagram in appropriate syntax
....

如果省略target,则会自动生成文件名。

相关问题