Struts2 API的chm格式帮助文档制作教程

在SSH三个框架中,Struts2的API文档是最难做的,这里所说的格式是chm格式的,chm的格式很方便,Hibernate API文档和Spring API文档只要通过相应的工具,和对应的javadoc就可以制作了,但是Struts2这个框架是两个框架结合的产物,所以官方将这两个框架单独的做成了API文档,如果要做需要分成两个API文档了。不利于我们的管理和查找。在开始学习Strust2的时候,就跟着视频学做API了,但是没有成功,昨天学Struts2的时候想再试一下,没想到成功了。将两个框架的API合到一起了,所以现在将我的心得和过程分享给大家。

准备材料:

Javadoc2chm,下载地址:http://jan.baresovi.cz/dr/en/en/download

Struts2的源代码,下载地址:http://struts.apache.org/

制作的过程大概是这样的:首先根据Struts2的源代码,通过命令或者是工具生成Javadoc,然后通过工具生成对应的chm格式的API文档。

1、首先找到Struts2 core和xwork的源代码,源代码所在的地址是:

Struts2的主目录\src\core\src\main\java和Struts2的主目录\src\xwork-core\src\main\java,如图所示:

2、然后在MyEclipse中新建一个web项目Make_Struts2_API,将上图中的org文件夹和com文件夹,放入到src下面,项目的结构如图所示:

3、项目的源代码导入完成之后,由于缺少相应的jar包,会出现叉号,以前我就是有很多的叉,来生成的,结果没有成功。这回我终于将所有的叉整没了,导出就成功了。这个项目所依赖的最简包如下所示:

4、将项目所需要的jar包放入lib文件夹,这里有servlet和jsp的api的jar包,在tomcat的lib文件夹下可以找到,还有几个spring的jar包,可以从spring里得到,还有些jar包可以从struts2的jar包里得到。导入完成之后,就没有红色的叉了。

5、然后在项目上鼠标右键选择“Export”命令,如图所示:

6、选择javadoc,单击next按钮继续,如图所示:

7、接下来选择javadoc命令所在的位置及生成的doc文档的存储的位置默认是项目下的,这里我所使用的是jdk1.7的javadoc,1.7的javadoc和1.6的javadoc生成的文档样式是不一样的,单击next按钮,如图所示:

8、接下来可以设置API文档的标题,也可以指定第三方类库的javadoc的位置,这样查询第三方类的时候,就可以看到说明,这里就不设置了如图所示:

9、接下来是最重要的一个步骤,要设置javadoc的编码,如果不设置,在用浏览器浏览的时候可能会出现乱码,这里设置UTF-8的编码,如图所示:

10、单击“Finish”按钮,开始导出doc文档,等一会导出就完成了。有警告没什么事。如图所示:

11、有些人可能知道jd2chm这个工具,这个工具可以将html格式的struts2 API编译成chm格式的,但是这个工具只支持jdk1.6生成的文档,不支持1.7的javadoc文档。所以这里不用了,这也是我今天发现的。所以这里选择javadoc2chm这个工具,可以将1.7的文档编译成chm格式的。启动工具如下所示:

12、按照上图的设置,点击“Go”按钮,就可以生成chm格式的文件了,生成chm文件可能需要htmlhelp 的支持。使用1.7的javadoc生成chm如下所示:

使用1.6的javadoc生成的chm格式文档如下所示:

接下来有时间我会写两篇博客,如何用javadoc2chm和jd2chm这两个工具制作java这个技术里的chm格式的API文档。

最后献上Struts2.3.4 的API文档地址,包含了所依赖的最简包:

http://download.csdn.net/detail/long2010yu2010/5787657

Struts2 API的chm格式帮助文档制作教程的更多相关文章

  1. 生成chm格式帮助文档的步骤

    开场前,道具先得被齐全了. 道具:struts2的开源代码(以生成struts2的帮助文档为例).chm格式生成工具jd2chm.exe(网上有) 好了,准备演出 1.在eclipse中新建一个jav ...

  2. Dash文档制作教程

    前言 什么是Dash 面向程序员的文档库(Mac) 代码片段管理工具 这是强烈推荐给每天在各种API文档中摸爬滚打的程序员们的神器. 为什么要自己制作文档 官方的源中没有相关文档 文档在离线下体验更好 ...

  3. html制作chm格式开源文档

    在主界面点击生成器,找到网页所在的文件夹. 然后用编译,还是找到网页文件夹.根据需要设置.TOC 那一项是目录,请根据需要修改. 特别要注意的是,预设那里,点击那个配置图标,会打开如下图的预设编辑器. ...

  4. Android BLE与终端通信(五)——Google API BLE4.0低功耗蓝牙文档解读之案例初探

    Android BLE与终端通信(五)--Google API BLE4.0低功耗蓝牙文档解读之案例初探 算下来很久没有写BLE的博文了,上家的技术都快忘记了,所以赶紧读了一遍Google的API顺便 ...

  5. api接口测试工具和接口文档管理工具

    api接口测试工具和接口文档管理工具 1.postman(https://www.getpostman.com) Postman 是一个很强大的 API调试.Http请求的工具.她可是允许用户发送任何 ...

  6. help文档制作 chm

    程序中的help文档制作 所用工具:HTML Help Workshop 文件包括:各个html文档,帮助页面的具体内容 hhc文档:help的目录文件 hhk文档:help的索引文件 MAP文件夹中 ...

  7. CEBX格式的文档如何转换为PDF格式文档、DOCX文档?

    方正阿帕比CEBX格式的文档如何转换为PDF格式文档.DOCX文档? 简介: PDF.Doc.Docx格式的文档使用的非常普遍,金山WPS可以直接打开PDF和Doc.Docx文档,使用也很方便. CE ...

  8. .net core的Swagger接口文档使用教程(二):NSwag

    上一篇介绍了Swashbuckle ,地址:.net core的Swagger接口文档使用教程(一):Swashbuckle 讲的东西还挺多,怎奈微软还推荐了一个NSwag,那就继续写吧! 但是和Sw ...

  9. 传智播客C/C++各种开发环境搭建视频工具文档免费教程

    传智播客作为中国IT培训的领军品牌,一直把握技术趋势,给大家带来最新的技术分享!传智播客C/C++主流开发环境免费分享视频文档中,就有写一个helloworld程序的示范.火速前来下载吧 所谓&quo ...

随机推荐

  1. zoj 2589 Matrix Searching 二维线段树

    题目链接 给一个n*n的矩阵, 给q个查询, 每次给出x1, y1, x2, y2, 求这个矩阵中的最小值. 代码基本上和上一题相同... #include<bits/stdc++.h> ...

  2. VS中,NUnit适合测试者尽心开发自动化测试,而Unit适合开发者开发单元测试。

    1.整合Visual Studio和NUnit 在Visual Studio 2010中,通过安装NUnit插件,可以不使用外部客户端,直接运行测试. 当然,貌似在最新版本的VS2012中,安装过NU ...

  3. JS表格排序

    var employees = [] employees[0] = { name: "George", age: 32, retiredate: "March 12, 2 ...

  4. SQL Server Mysql 对null值理解的不同

    在说到对null值的理解主要是用unique来体现的.也是说null在unique约束看来是一个值还是多个值的问题. 还是开始实验吧. MYSQL create table t(x int ,cons ...

  5. SSHD配置

    http://blog.licess.com/sshd_config/ LIBPCAP http://blog.csdn.net/htttw/article/details/7521053 Oracl ...

  6. qt5集成libcurl实现tftp和ftp的方法一:搭建环境(五篇文章)

    最近使用QT5做一个软件,要求实现tftp和ftp文件传输,使用QT5开发好UI界面等功能,突然发现QT5不直接提供tftp和ftp支持,无奈之下只好找第三方库来间接实现,根据网友的介绍,libcur ...

  7. Select XML Nodes by Name [C#]

    原文 http://www.csharp-examples.net/xml-nodes-by-name/ To find nodes in an XML file you can use XPath ...

  8. spring+springMVC集成(annotation方式)

    spring+springMVC集成(annotation方式) SpringMVC+Spring4.0+Hibernate 简单的整合 MyBatis3整合Spring3.SpringMVC3

  9. getline函数

    在我的印象中,getline函数常常出如今自己的视野里,模糊地记得它常常常使用来读取字符串 .可是又对它的參数不是非常了解,今天又用到了getline函数,如今来细细地总结一下: 首先要明确设计get ...

  10. #pragma的用法

    在所有的预处理指令中,#Pragma   指令可能是最复杂的了,它的作用是设定编译器的状态或者是指示编译器完成一些特定的动作.#pragma指令对每个编译器给出了一个方法,在保持与C和 C++语言完全 ...