本文对使用Maven工程构建Jenkinsjob时遇到的问题进行一下分析汇总。
JavaDoc标记使用问题
一般Maven项目都有配置产生Java DOC,但是在Jenkins里面产生DOC会有一些严格的要求,否则会导致构建失败。例如:
@XXX
我们不能自己随便拼写单词,这样是不允许的,代码虽然不会报错,但是在输出JavaDoc时报错,比如在方法上添加关于作者描述的注释加“@date 2018年3月10日”这样的时间标记,在idea可以通过构建,但是Jenkins就会报错。
/var/lib/jenkins/workspace/itoo-teachingManagement-beta/teachingManagement-web/src/main/java/com/dmsdbj/itoo/teachingManagement/controller/TrainingProgramsController.java:461: 错误: 未知标记: Date * @Date: 10/13/2017 4:33 PM
/var/lib/jenkins/workspace/itoo-teachingManagement-beta/teachingManagement-web/src/main/java/com/dmsdbj/itoo/teachingManagement/controller/ElectiveCoursePubController.java:99: 错误: 未知标记: description * @description 批量删除培养计划 ^
当@XXX后边没有描述内容时,会警告。
注释中不允许使用一些格式错误的HTML标签,返回的实体LinkedshMap用了<>
@XXX后边不能使用冒号:必须是方法的参数
2. Java文档和Javadoc
Java 程序员都应该知道使用 JDK 开发,最好的帮助信息就来自 SUN 发布的 Java 文档。它分包、分类详细的提供了各方法、属性的帮助信息,具有详细的类树信息、索引信息等,并提供了许多相关类之间的关系,如继承、实现接口、引用等。
Java 文档全是由一些 html 文件组织起来的,在 SUM 的站点上可以下载它们的压缩包。但是你肯定想不到,这些文档我们可以自己生成。
安装了 JDK 之后,安装目录下有一个 src.jar 文件或者 src.zip 文件,它们都是以 ZIP 格式压缩的,可以使用 WinZip 解压。解压之后,我们就可以看到分目录放的全是 .java 文件。是了,这些就是 Java 运行类的源码了,非常完整,连注释都写得一清二楚
仔细对比一下 .java 源文件中的文档注释 (/* … /) 和 Java 文档的内容,你会发现它们就是一样的。再仔细一点,你会发现 .java 源文件中的注释还带有 HTML 标识,如 <B>、<BR>、<Code> 等,在 Java 文档中该出现这些标识的地方,已经按标识的的定义进行了排版。
在 JDK 的 bin 目录下你可以找到 javadoc,如果是 Windows 下的 JDK,它的文件名为 javadoc.exe。使用 javdoc 编译 .java 源文件时,它会读出 .java 源文件中的文档注释,并按照一定的规则与 Java 源程序一起进行编译,生成文档。
为了能够编译下面提到的若干例子,这里先介绍一条 javadoc 命令:javadoc -d 文档存放目录 -author -version 源文件名.java这条命令编译一个名为 “源文件名.java”的 java 源文件,并将生成的文档存放在“文档存放目录”指定的目录下,生成的文档中 index.html 就是文档的首页。-author 和 -version 两上选项可选。
3. 文档注释的格式
文档注释可以用于对类、属性、方法等进行说明。写文档注释时除了需要使用 /* …. / 限定之外,还需要注意注释内部的一些细节问题。
3.1 文档和文档注释的格式化
生成的文档是HTML格式,而这些HTM 格式的标识符并不是Javadoc加的,而是我们在写注释的时候写上去的。比如,需要换行时,不是敲入一个回车符,而是写入<br>,如果要分段,就应该在段前写入 <p>。
因此,格式化文档,就是在文档注释中添加相应的 HTML 标识。
文档注释的正文并不是直接复制到输出文件 (文档的 HTML 文件),而是读取每一行后,删掉前导的 * 号及 * 号以前的空格,再输入到文档的。如:
/**
* This is first line. <br>
* This is second line. <br>
This is third line.
*/
编译输出后的HTML源码则是&