我只是在重新访问 Maven 的中间。当我们上次查看这个时,我们的团队经历了一次糟糕的经历,因为那是在 maven 从 1.x 重新架构到 2.x 的时期,所以我们需要的很多依赖项都没有转移到新的存储库中. 不过,我现在有时间重新考虑。
我对使用 maven 和 LaTeX 或 DocBook 来创建文档很感兴趣,我想知道是否有人有任何经验可以分享、项目/模块结构、使用好的插件等...
非常感谢 :-)
编辑:
澄清一下,我希望写一篇技术文章/书籍,而我想要的工件可能是 PDF。
我只是在重新访问 Maven 的中间。当我们上次查看这个时,我们的团队经历了一次糟糕的经历,因为那是在 maven 从 1.x 重新架构到 2.x 的时期,所以我们需要的很多依赖项都没有转移到新的存储库中. 不过,我现在有时间重新考虑。
我对使用 maven 和 LaTeX 或 DocBook 来创建文档很感兴趣,我想知道是否有人有任何经验可以分享、项目/模块结构、使用好的插件等...
非常感谢 :-)
编辑:
澄清一下,我希望写一篇技术文章/书籍,而我想要的工件可能是 PDF。
DocBook 是 Doxia 的众多支持输入之一,Doxia 是 maven 用于生成文档的引擎。参考这里:http ://maven.apache.org/doxia/modules/index.html
事实上,Doxia 网站回答了您的确切问题:http ://maven.apache.org/doxia/book/index.html
您可以使用 mvn site 命令(即使用插件 site )使用 Maven 轻松创建站点(包含文档)。
该插件创建技术报告(例如 Javadoc、单元测试报告、代码覆盖率......),但也可用于创建“真实站点”。您在此页面中有更多详细信息。
基本上,您使用APT(几乎是纯文本,非常容易理解)或基于 XML 的格式Xdoc编写您的页面。
2 年前,我使用 XDoc 格式和 Site Maven 插件为我开发的一个应用程序创建了一个完整的用户指南。在全球范围内,它很容易创建!
我希望这能帮到您!
我一直在成功使用 Maven 插件 Docbkx。你应该试一试
你绝对应该看看Maven Docbkx 插件。它可能符合您的需求。Doxia 对 DocBook 的支持是-uhm- 次优的。事实上,上次我尝试它时,它产生了一些新的东西——据我所知——不是 DocBook。
我所指的 Maven Docbkx 插件支持世界上的所有自定义(通过插件参数或 XSLT 覆盖,如果你喜欢的话)+它具有一些将其与 Maven 构建集成的机制。(例如将 Maven pom 属性包含到文档中的处理说明。)
请注意,目标是拥有一个插件,以防止您必须自己手动组合处理链。所以这个插件既可以转换为 FO,也可以转换为 PDF。
我最近使用 docbook 和用于 maven 的 docbkx 插件为我的 maven 多模块项目实现了项目文档。我现在每次构建项目站点时都会自动生成 html 和 pdf 文件。我认为 docbkx 真的很棒,所以我建议你使用它。
确实如此 - 您只需使用 maven 站点和 doxia 插件就可以创建一个非常好的站点。事实上,我正在使用这两个来生成我的项目站点,但是 doxia 对 docbook 的支持非常有限,并且不允许您模块化文档,例如,包括主文档中的部分文档。因此,对于大型参考手册,我使用的是 docbkx。
如果你想看一看,我的项目就在这里。您实际上可以下载源代码并查看它的本质。当然,如果您对此设置有任何疑问,我将非常乐意提供帮助。
干杯卡洛斯
尽管这个问题已经很老了,但我想对此进行更新。如果你想使用 LaTeX 作为你的文档,你应该使用一个 maven 插件来生成文档。有几个 maven-plugins 这样做,但其中很多不再维护。有一个新的 maven-plugin 不需要或只需要很少的配置即可使其工作,并且生成的 PDF(或 PS 或 DVI)可以作为工件发布。
AFAIK 没有可以处理 LaTeX 或 DocBook 的官方或半官方插件,但您可以做的(除了使用上述站点插件)是配置 exec 插件以在站点生命周期内处理您的 LaTeX/DocBook 源,即项目网站建设的同时。
例如,像
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>exec-maven-plugin</artifactId>
<executions>
<execution>
<id>latex</id>
<goals>
<goal>exec</goal>
</goals>
<phase>site</phase>
<configuration>
...
</configuration>
</execution>
</executions>
</plugin>