smart-doc-maven-plugin?插件的使用
pom 中添加插件
<plugin> <groupId>com.github.shalousun</groupId>?
?<artifactId>smart-doc-maven-plugin</artifactId>?
?<version>1.0.0</version> <configuration> <!--指定生成文檔的使用的配置文件-->?
?<configFile>./src/main/resources/smart-doc.json</configFile> <!--指定項(xiàng)目名稱(chēng)-->?
?<projectName>測(cè)試</projectName>?
?</configuration>?
?<executions>?
?<execution>?
?<phase>compile</phase>?
?<goals>?
?<goal>html</goal>?
?</goals>?
?</execution>?
?</executions>
</plugin>
在自己的項(xiàng)目中創(chuàng)建一個(gè)json配置文件,smart-doc-maven-plugin插件會(huì)根據(jù)這個(gè)配置生成項(xiàng)目的接口文檔避凝。目錄/src/main/resources/smart-doc.json刻蟹。配置內(nèi)容參考如下。
{ "serverUrl": "http://127.0.0.1", //設(shè)置服務(wù)器地址,非必須 "isStrict": false, //是否開(kāi)啟嚴(yán)格模式 "allInOne": true, //是否將文檔合并到一個(gè)文件中栅屏,一般推薦為true "outPath": "D://md2", //指定文檔的輸出路徑 "coverOld": true, //是否覆蓋舊的文件洒闸,主要用于mardown文件覆蓋 "packageFilters": "",//controller包過(guò)濾获讳,多個(gè)包用英文逗號(hào)隔開(kāi) "md5EncryptedHtmlName": false,//只有每個(gè)controller生成一個(gè)html文件是才使用 "projectName": "smart-doc",//配置自己的項(xiàng)目名稱(chēng) "skipTransientField": true,//目前未實(shí)現(xiàn) "dataDictionaries": [ //配置數(shù)據(jù)字典,沒(méi)有需求可以不設(shè)置 { "title": "訂單狀態(tài)", //數(shù)據(jù)字典的名稱(chēng) "enumClassName": "com.power.doc.enums.OrderEnum", //數(shù)據(jù)字典枚舉類(lèi)名稱(chēng) "codeField": "code",//數(shù)據(jù)字典字典碼對(duì)應(yīng)的字段名稱(chēng) "descField": "desc"http://數(shù)據(jù)字典對(duì)象的描述信息字典 } ], "errorCodeDictionaries": [{ //錯(cuò)誤碼列表愤诱,沒(méi)有需求可以不設(shè)置 "title": "title", "enumClassName": "com.power.doc.enums.ErrorCodeEnum", //錯(cuò)誤碼枚舉類(lèi) "codeField": "code",//錯(cuò)誤碼的code碼字段名稱(chēng) "descField": "desc"http://錯(cuò)誤碼的描述信息對(duì)應(yīng)的字段名 }], "revisionLogs": [ //設(shè)置文檔變更記錄云头,沒(méi)有需求可以不設(shè)置 { "version": "1.0", //文檔版本號(hào) "status": "update", //變更操作狀態(tài),一般為:創(chuàng)建淫半、更新等 "author": "author", //文檔變更作者 "remarks": "desc" //變更描述 } ], "customResponseFields": [ //自定義添加字段和注釋?zhuān)琣pi-doc后期遇到同名字段則直接給相應(yīng)字段加注釋?zhuān)潜仨? { "name": "code",//覆蓋響應(yīng)碼字段 "desc": "響應(yīng)代碼",//覆蓋響應(yīng)碼的字段注釋 "value": "00000"http://設(shè)置響應(yīng)碼的值 } ], "requestHeaders": [ //設(shè)置請(qǐng)求頭溃槐,沒(méi)有需求可以不設(shè)置 { "name": "token", "type": "string", "desc": "desc", "required": false, "since": "-" } ], "sourceCodePaths": [ //設(shè)置代碼路徑,默認(rèn)加載src/main/java, 沒(méi)有需求可以不設(shè)置 { "path": "src/main/java", "desc": "測(cè)試" } ]}
maven Helper插件選擇生成何種文檔.
注意: controller 層的函數(shù)需要添加/***/樣式的函數(shù)注釋 并且不能有空值? 科吭,其他的實(shí)體類(lèi)中的字段描述也要使用相同的注釋方式昏滴。
導(dǎo)出結(jié)果