我正在使用Javadoc工具记录一些代码,并且结果使用系统类的完全限定名称,例如java.lang.String
。有没有一种方法可以专门针对java.*
和javax.*
层次结构中的类阻止这种情况?
例如,这样的方法定义:
* @param field String to write.
* @throws IOException If the underlying stream throws an exception.
*/
public void writeField( String field ) throws IOException {
// etc.
产生如下的Javadoc输出:
writeField
public void writeField(java.lang.String field) throws java.io.IOException
...etc.
Parameters:
field - String to write.
Throws:
java.io.IOException - If the underlying stream throws an exception.
我希望对java.lang.String
的引用只是String
,对java.io.IOException
的引用也同样只是IOException
。
有什么想法吗?
编辑并更新re。可接受的答案如下:
在NetBeans 10中,解决此问题的方法是转到“项目”视图,然后切换到“文件”视图。然后在项目文件中,找到nbproject/project.properties
并打开该文件(右键单击,选择“打开”)。
在属性视图中,向左滚动直到看到javadoc.additionalparam
。然后将以下内容添加到该属性的右侧(在我的情况下,其值为空)-link https://docs.oracle.com/en/java/javase/11/docs/api/
然后保存(control-S)文件并进行构建。 Javadocs现在看起来像我想要的。谢谢色拉!
答案 0 :(得分:2)
如果Javadoc无法链接到class / method / etc,则输出标准名称。为了仅输出简单名称,您必须链接到外部Javadoc。这是通过javadoc
工具的-link <url>
命令行选项完成的。要链接到SE类(即java.*
和javax.*
),一种选择是使用:
javadoc -link https://docs.oracle.com/en/java/javase/11/docs/api/ [...]
[...]
是命令行的其余部分。您可以将URL更改为指向其他Java版本(例如Java 8而不是Java 11)。
还有一个-linkoffline <url1> <url2>
选项。
注意:我相信这两个选项都是由“标准doclet”提供的。如果不使用标准doclet,则这些选项可能不可用或可能会有所不同。