很多人都說docbook配置環境比較繁瑣,今天看了一下docbook5的文檔,5.0不再使用舊的SGML DTD,轉而使用XML,感覺配置相對容易多了,網上有篇文章介紹5.0的編譯環境,真的比較簡單.不過我今天看了看jboss seam的文檔構建過程,構建環境搭建真是簡單的不能再簡單了,jboss seam使用maven來發布docbook文檔,用到了maven-jdocbook-plugin,我把jboss seam的構建提取出來,大家可以參考來方便構建自己的docbook.
創建一個最最簡單的maven空項目,pom.xml內容如下:
<?xml version="1.0"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>org.kuuyee</groupId>
<artifactId>first-docbook</artifactId>
<packaging>jar</packaging>
<version>1.0-SNAPSHOT</version>
<name>first-docbook</name>
<build>
<plugins>
<!-- the docbook generation plugin for the user guide -->
<plugin>
<groupId>org.jboss.maven.plugins</groupId>
<artifactId>maven-jdocbook-plugin</artifactId>
<version>2.1.1</version>
<extensions>true</extensions>
<dependencies>
<dependency>
<groupId>org.jboss</groupId>
<artifactId>jbossorg-docbook-xslt</artifactId>
<version>1.1.0</version>
</dependency>
<dependency>
<groupId>org.jboss</groupId>
<artifactId>jbossorg-jdocbook-style</artifactId>
<version>1.1.0</version>
<type>jdocbook-style</type>
</dependency>
</dependencies>
<executions>
<execution>
<id>tutorial_zh_CN</id>
<phase>package</phase>
<goals>
<goal>resources</goal>
<goal>generate</goal>
</goals>
<configuration>
<sourceDocumentName>master.xml</sourceDocumentName>
<sourceDirectory>${basedir}/src/main/docbook/zh_CN</sourceDirectory>
<imageResource>
<directory>${basedir}/src/main/docbook/images</directory>
</imageResource>
<cssResource>
<directory>${basedir}/src/main/docbook/css</directory>
</cssResource>
<targetDirectory>${basedir}/target/docbook/zh_CN</targetDirectory>
<formats>
<format>
<formatName>pdf</formatName>
<stylesheetResource>classpath:/xslt/org/jboss/pdf.xsl</stylesheetResource>
<finalName>zh_CN.pdf</finalName>
</format>
<format>
<formatName>html</formatName>
<stylesheetResource>classpath:/xslt/org/jboss/xhtml.xsl</stylesheetResource>
<finalName>index.html</finalName>
</format>
<format>
<formatName>html_single</formatName>
<stylesheetResource>classpath:/xslt/org/jboss/xhtml-single.xsl</stylesheetResource>
<finalName>index.html</finalName>
</format>
</formats>
<options>
<xincludeSupported>true</xincludeSupported>
</options>
</configuration>
</execution>
</executions>
</plugin>
</plugins>
</build>
<!-- basic JBoss repository so that the common parent POM in jbosscache-support can be found -->
<repositories>
<repository>
<id>snapshots.jboss.org</id>
<url>http://snapshots.jboss.org/maven2</url>
</repository>
<repository>
<id>repository.jboss.org</id>
<url>http://repository.jboss.org/maven2</url>
</repository>
</repositories>
</project>
在src/main/docbook/zh_CN下新建兩個xml文件master.xml,chap1.xml.這裡用到了docbook的物理分割概念,就是把單個文檔拆分文檔為多個文件,這在文檔比較巨大的時候很實用.
master.xml是文檔主文件,內容如下:
<?xml version='1.0' encoding="utf-8"?>
<book xmlns="http://docbook.org/ns/docbook" version="5.0" xml:lang="zh-CN" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:xi="http://www.w3.org/2001/XInclude">
<title>光子的第一本Docbook書</title>
<xi:include href="chap1.xml"/>
</book>
chap1.xml是文檔的第一章,內容如下:
<?xml version='1.0' encoding="utf-8"?>
<chapter xmlns="http://docbook.org/ns/docbook" version="5.0" xml:lang="zh-CN"
xmlns:xlink="http://www.w3.org/1999/xlink" id="ch1" xmlns:xi="http://www.w3.org/2001/XInclude">
<title>光子的第一篇Docbook 5.0文檔</title>
<section>
<title>第一章標題</title>
<para>
這是光子的第一篇Docbook 5.0文檔,我的BLOG<link xlink:href='http://www.blogjava.net/kuuyee/'>光子CI之旅</link>。
</para>
</section>
</chapter>
ok,我們可以發布文檔了,沒錯!就是這麼簡單,在項目根目錄運行命令
mvn clean package
如果大家不明白可以下載附件源碼看看!樣式還是使用jboss的,不過可以自己修改xsl!
貼張圖看看生成的文檔,呵呵!
本文配套源碼