用maven-jdocbook-plugin简单配置docbook5.0环境

很多人都说docbook配置环境比较繁琐,今天看了一下docbook5的文档,5.0不再使用旧的SGML DTD,转而使用XML,感觉配置相对容易多了,网上有篇 文章介绍5.0的编译环境,真的比较简单.不过我今天看了看jboss seam的文档构建过程,构建环境搭建真是简单的不能再简单了,jboss seam使用maven来发布docbook文档,用到了maven-jdocbook-plugin,我把jboss seam的构建提取出来,大家可以参考来方便构建自己的docbook.

创建一个最最简单的maven空项目,pom.xml内容如下:
<!--<br /> <br /> Code highlighting produced by Actipro CodeHighlighter (freeware)<br /> http://www.CodeHighlighter.com/<br /> <br /> --> <? 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是文档主文件,内容如下:
<!--<br /> <br /> Code highlighting produced by Actipro CodeHighlighter (freeware)<br /> http://www.CodeHighlighter.com/<br /> <br /> --> <? 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是文档的第一章,内容如下:
<!--<br /> <br /> Code highlighting produced by Actipro CodeHighlighter (freeware)<br /> http://www.CodeHighlighter.com/<br /> <br /> --> <? 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,我们可以发布文档了,没错!就是这么简单,在项目根目录运行命令
<!--<br /> <br /> Code highlighting produced by Actipro CodeHighlighter (freeware)<br /> http://www.CodeHighlighter.com/<br /> <br /> --> mvn clean  package

如果大家不明白可以下载附件源码看看!样式还是使用jboss的,不过可以自己修改xsl!
样例代码

贴张图看看生成的文档,呵呵!

用maven-jdocbook-plugin简单配置docbook5.0环境_第1张图片

用maven-jdocbook-plugin简单配置docbook5.0环境_第2张图片



你可能感兴趣的:(maven,xml,jboss,seam,XSL)