0

考虑以下 JavaDoc:

  /**
   * Test method for
   * {@link MySelectionStyleConfiguration#configureSelectionStyle(org.eclipse.nebula.widgets.nattable.config.IConfigRegistry)}.
   * 
   */

每当我保存此注释所属的 JUnit5 测试类时,都会将{@link }其重新格式化为一行,这是正确的,否则如果我尝试在链接中引入换行符,Maven Checkstyle 插件将抛出错误(javadoc) SingleLineJavadoc: Javadoc comment at column 78 has parse error. Details: mismatched input '\n' expecting MEMBER while parsing REFERENCE:(另外我认为链接在由此呈现的 API 文档中无法正确解析。)

但是,如果我将长链接行保持原样,Maven Checkstyle 插件也会引发(sizes) LineLength: Line is longer than 100 characters (found 125).错误: .

有没有办法解决这个问题?

要求:

  • 100 字符行规则应该保留,但{@link }JavaDoc 中的长标签(在测试类中最明显,但也可能在其他地方)应该被排除在外。
  • 该链接仍应在呈现的 JavaDoc 中解析(即,它应保持有效)。

编辑

我可以从链接中省略包名称,但我想将它们保留在那里,以便它们只解决一件事,而不是潜在地解决同名的东西。

4

1 回答 1

1

可以通过 LineLength 检查https://checkstyle.sourceforge.io/config_sizes.html#LineLength的“ignorePattern”属性来完成

在你的情况下,像

<module name="LineLength">
  <property name="max" value="100"/>
  <property name="ignorePattern" value="^ \* \{@link .*$"/>
</module>

会解决问题。

于 2020-03-11T09:22:44.557 回答