- O que estou tentando alcançar:
Gere javadoc para registros java 21 muito simples.
- O que eu tentei:
Eu tenho este registro simples:
/**
* The type Some record.
*/
public record SomeRecord(String someField) {
}
e este pom:
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-javadoc-plugin</artifactId>
<configuration>
<outputDirectory>target/javadoc</outputDirectory>
<reportOutputDirectory>target/javadoc</reportOutputDirectory>
<javadocExecutable>${java.home}/bin/javadoc</javadocExecutable>
</configuration>
</plugin>
E estou executando este comando maven:
mvn clean install site -U javadoc:javadoc
- Emitir:
Reproduzível 100%, entendo o seguinte:
SomeRecord.java:6: warning: no @param for someField
[WARNING] public record SomeRecord(String someField) {
[WARNING] ^
- Pergunta:
O que está errado neste código? O que é isso @param? Lembro-me de um @Param para Spring, mas @param (minúsculas?) Como posso gerar sem o javadoc corretamente?
@param
, no contexto Javadoc, é chamada de tag Javadoc (às vezes chamada de tags de bloco JavaDoc) e é usada para documentar o que o parâmetro específico será usado (ou seja, o que ele constitui no domínio). Isso não tem nada a ver com o Spring@Param
.A Oracle diz que :
Com relação a
warning: no @param for someField
, apenas diz que você não tem uma descrição (que deve ser criada por@param
, no JavaDoc) para osomeField
parâmetro.Basta adicionar:
Por fim, fique atento, essa
javadoc
ferramenta irá avisá-lo sobre todos os locais onde espera algumas tags de bloco, mas não as encontra.