Skip to content
This repository was archived by the owner on Dec 4, 2025. It is now read-only.

Commit 772113d

Browse files
authored
Merge pull request #1019 from linwumingshi/refactor/javadoc
refactor(doc): 🎨 improve API documentation generation and enforce strict `Javadoc` validation
2 parents a1e79e5 + 7d42332 commit 772113d

File tree

3 files changed

+26
-2
lines changed

3 files changed

+26
-2
lines changed

pom.xml

Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -129,8 +129,30 @@
129129
<groupId>org.apache.maven.plugins</groupId>
130130
<artifactId>maven-javadoc-plugin</artifactId>
131131
<version>${maven-javadoc-plugin.version}</version>
132+
<configuration>
133+
<!--
134+
Fail the build if any Javadoc warnings or errors occur.
135+
This ensures that all Javadoc issues are treated seriously.
136+
-->
137+
<failOnError>true</failOnError>
138+
<additionalOptions>
139+
<!--
140+
Enable strict validation of Javadoc content.
141+
The "all" option checks for syntax, references, and HTML issues.
142+
-->
143+
<additionalOption>-Xdoclint:all</additionalOption>
144+
</additionalOptions>
145+
</configuration>
132146
<executions>
133147
<execution>
148+
<id>validate-javadoc</id>
149+
<phase>validate</phase>
150+
<goals>
151+
<goal>javadoc</goal>
152+
</goals>
153+
</execution>
154+
<execution>
155+
<id>package-javadoc-jar</id>
134156
<phase>package</phase>
135157
<goals>
136158
<goal>jar</goal>

src/main/java/com/ly/doc/builder/IRpcDocBuilderTemplate.java

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -130,6 +130,7 @@ default void buildAllInOne(List<T> apiDocList, ApiConfig config, JavaProjectBuil
130130
* @param javaProjectBuilder JavaProjectBuilder
131131
* @param template template
132132
* @param outPutFileName output file
133+
* @return beetl Template
133134
*/
134135
default Template buildAllInOneWord(List<RpcApiDoc> apiDocList, ApiConfig config,
135136
JavaProjectBuilder javaProjectBuilder, String template, String outPutFileName) {

src/main/java/com/ly/doc/template/IRestDocTemplate.java

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1214,7 +1214,7 @@ else if (JavaClassValidateUtil.isFile(gicName)) {
12141214
paramList.add(param);
12151215
}
12161216
else {
1217-
if (requestBodyCounter > 0 || !ApiParamEnum.QUERY.equals(apiParamEnum)) {
1217+
if (requestBodyCounter > 0 || !isQueryParam) {
12181218
// for json
12191219
paramList.addAll(ParamsBuildHelper.buildParams(gicNameArr[0], DocGlobalConstants.EMPTY, 0,
12201220
String.valueOf(required), Boolean.FALSE, new HashMap<>(16), builder, groupClasses,
@@ -1305,6 +1305,7 @@ else if (isRequestPart) {
13051305
String.valueOf(required), Boolean.FALSE, new HashMap<>(16), builder, groupClasses,
13061306
docJavaMethod.getJsonViewClasses(), 1, jsonRequest, null));
13071307
}
1308+
// other types
13081309
else {
13091310
List<ApiParam> apiParams = ParamsBuildHelper.buildParams(typeName, DocGlobalConstants.EMPTY, 0,
13101311
String.valueOf(required), Boolean.FALSE, new HashMap<>(16), builder, groupClasses,
@@ -1313,7 +1314,7 @@ else if (isRequestPart) {
13131314
boolean hasFile = apiParams.stream()
13141315
.anyMatch(param -> ParamTypeConstants.PARAM_TYPE_FILE.equals(param.getType()));
13151316
// if it does not have file and query param, set query param true
1316-
if (!hasFile && ApiParamEnum.QUERY.equals(apiParamEnum)) {
1317+
if (!hasFile && isQueryParam) {
13171318
for (ApiParam apiParam : apiParams) {
13181319
apiParam.traverseAndConsume(ApiParam::setQueryParamTrue);
13191320
}

0 commit comments

Comments
 (0)