我写了一个自定义的 Javadoc taglet,它添加了一个新的 note
标签:
...
public boolean isInlineTag() { return false; }
public String toString(Tag tag) {
return "<pre class='note'>" + tag.text() + "</pre>";
}
它目前有效,但内联标签没有展开。这是一个示例评论:
/**
* @note Test note with {@link Someclass} // @link tag is NOT expanded
* @param name - here the {@link Someclass} works // works for standard 'param' tag
*/
{@link}
内联标签没有展开。但是,它对内置的 param
javadoc 标记工作得很好。
有没有办法在自定义 Javadoc taglet 中扩展嵌套的内联标签?
谢谢!
最佳答案
Taglets can be written as either block tags, such as @todo, or inline tags, such as {@underline}. Block taglets do not currently support inline tags in their text.
事实上,taglet API 有点太小了,因为它只支持 toString()
方法。
您可以在该方法中检索参数 tag
的子标签(使用 .inlineTags()
),但是您必须自己格式化它们,因为您不'从您的 taglet 访问标准 doclet 的正常机制。
所以,如果您不想在您自己的 taglet 中重新实现(或复制)标准 doclet 的某些部分,那么看起来您在这里不走运。 (但是,您同样可以直接扩展标准 doclet 而不是使用 taglet 对其进行修补。)
关于java - 在自定义 Javadoc taglet 中展开内联标签,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4192166/