You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

在Antora构建的Asciidoc中引入PlantUML遇路径错误,求解决方案

问题分析

IDE(比如IntelliJ)是基于本地文件系统路径解析资源,而Antora采用模块资源ID的逻辑管理资源——哪怕文件在同一目录,直接用相对路径也会导致构建失败。原因是Antora构建时会重新组织资源结构,不会保留本地目录的直接引用关系,这就是本地预览正常但构建报错的核心原因。

解决方案

1. 标准Antora资源ID引用

在foo.adoc里,把原有的PlantUML引用替换成Antora的资源ID格式,针对你的项目结构,正确写法如下:

如果是用!include导入PlantUML内容:

[plantuml]
----
!include module:ROOT:pages/bar.puml
----

如果是直接引用整个PlantUML文件生成图表:

plantuml::module:ROOT:pages/bar.puml[自定义图表标题]

2. 同目录简化引用(可选)

因为两个文件在同一模块的同一目录下,也可以用更简洁的相对资源引用,省略模块和目录前缀:

[plantuml]
----
!include resource::bar.puml
----

Antora会自动识别当前adoc所在的模块和目录,匹配对应的.puml文件。

3. 确认资源加载配置

检查你的antora-playbook.yml,确保没有限制.puml文件的加载。默认配置下modules/ROOT/pages下的所有文件都会被识别,若有自定义resources规则,需确保包含.puml类型:

site:
  resources:
    - path: '**/*.puml'
      included: true
关键提醒

绝对不要用本地相对路径(比如./bar.puml或直接写bar.puml),Antora构建时无法识别这种文件系统路径;而内联PlantUML正常,是因为代码直接嵌入在adoc文件中,不需要加载外部资源。

内容的提问来源于stack exchange,提问作者miracoly

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.09 19:01:17