Doxia 问题和陷阱
本文档收集了与 Doxia 合作时有关特定问题和“陷阱”的一些信息。另请查看常见问题。
Apt 锚点和链接
使用Doxia 1.1处理旧的 Apt 源文件时,您可能会看到很多警告:
[WARNING] [Apt Parser] Ambiguous link: 'doxia-apt.html'. If this is a local link, prepend "./"!
和
[WARNING] [Apt Parser] Modified invalid link: references/doxia-apt.html
原因是在 Apt 中,指向其他源文档的链接必须以其中一个开头,./
或者../
将它们与内部链接区分开来。请阅读我们的 Apt 指南中关于锚点和链接的部分。请特别注意 Apt 中的内部链接不以“#”开头。
您应该注意这些警告,因为您的链接很可能会被破坏。不幸的是,警告消息无法指示链接断开的源文件(参见例如MPDF-11),但是,如果您在DEBUG
模式下运行,例如使用开关调用 maven -X
,您可以看到警告时正在解析哪个源文档发出。
图接收器事件
Doxia 区分了作为块级元素的图形和作为行内元素的图像(或图标)。例如,以下接收器事件序列
sink.figure( null ); sink.figureGraphics( "figure.png", null ); sink.figureCaption( null ); sink.text( "Figure caption", null ); sink.figureCaption_(); sink.figure_();
应输出与此 html 片段等效的内容:
<div class="figure"> <p><img src="figure.png"/></p> <p>Figure caption</p> </div>
而figureGraphics( ... );
单独的事件可用于生成内嵌图像,即仅在<img>
html 的情况下的标记。
请注意,我们使用的是采用上述形式的形式SinkEventAttributeSet
,即使我们只是传入空值。原因是替代形式(没有SinkEventAttributeSet
)具有不同的行为,这是为了向后兼容而保留的(但这些方法已被弃用)。使用与上述相同的接收器事件序列,但省略null
方法参数,将生成
<img src="figure.png" alt="Figure caption"/>
空生成页面
使用 Maven 报告插件运行后mvn site
,您会看到生成的页面是空的。确保代码调用sink.close()
.