Javadoc 显示错误 "reference not found" 尽管引用 cleary 存在

Javadoc shows Error "reference not found" although reference cleary exists

在 Java8 中,javadoc 检查变得更加严格。常见的解决方案是禁用严格的 javadoc 检查。尽管如此,我还是开始尝试修复一些项目中的错误。
但是有一个错误我没有得到修复。

对应class:

package foo;

import com.google.gwt.user.client.ui.TextArea;
[...]

public class MyClass {

  [...]

  /**
   * @see TextArea#getValue()
   */
  public String getValue() {
      [...]
  }

  /**
   * @see TextArea#setValue(String value)
   */
  public void setValue(String value) {
      [...]
  }

  /**
   * @see TextArea#setValue(String, boolean)
   */
  public void setValue(String value, boolean fireEvents) {
      [...]
  }
}

错误信息:

[ERROR] ...\MyClass.java:44: error: reference not found
[ERROR] * @see TextArea#setValue(String value)  
[ERROR] ^
[ERROR] ...\MyClass.java:51: error: reference not found
[ERROR] * @see TextArea#setValue(String, boolean)

错误消息指出它无法在 setValue-Methods 的 Javadoc 中找到 TextArea - 但另一方面在 [= 上找到 TextArea 没有问题16=]-方法.

据我所知,我遵循了How to specify a name as well as @see reference

有什么线索吗?非常感谢!

而不是:

/**
 * @see TextArea#getValue()
 */

尝试:

/**
 * @see com.google.gwt.user.client.ui.TextArea#getValue()
 */

好的,我现在得到答案了,有点棘手!

  • TextArea 扩展 ValueBoxBase<String>
  • TextArea#getValue()没有参数,一切正常
  • 方法 TextArea#setValue(String value)TextArea 中不存在,而是在超类中定义:ValueBoxBase#setValue(Object, boolean)

但就是这样!没有 "technically" 没有方法 setValue(String)。而是setValue(Object)。 javadoc 无法自行解决这个问题,或者这只是一个错误。

因此,我发现解决这个问题的唯一方法是使用对超类的引用。

/**
 * @see com.google.gwt.user.client.ui.ValueBoxBase#setValue(Object, boolean)
 */

我遇到了同样的问题。 但是我没有()的方法就解决了。

@see ClassTest.method