Javadoc使用相对路径链接到src / main / resource或src / test / resource文件

时间:2017-05-04 02:22:17

标签: java intellij-idea resources javadoc

如果有一种方法可以将javadoc中的链接放入驻留在src / main / resources或src / test / resources中的标准资源文件,以便其他编码器可以快速导航到资源文件,我会发现它非常有用(在本例中是一个JSON文件)。

这些文件用于单元测试,需要在架构更改时经常进行修改。

这里的答案Link to text file (resource) in Javadoc没有用,因为绝对路径太脆弱了。

有没有办法像资源一样对@see做同样的事情? 如果javadoc本身不足,那么IntelliJ特有的东西会很棒。

4 个答案:

答案 0 :(得分:2)

无需提及绝对路径。请参阅下面的我的包和类结构。如果我遵循URI规则,从姐妹包中我会..返回一个文件夹并像这样提到它。有用!单击该文件时,文件将打开。虽然我已经在eclipse中说明了这一点,但我认为这应该是IDE不可知的。

/**
 * Removes all the stop words like a, for, the etc. from the text. For a
 * full list of stop words check
 * <a href="file:../resources/stopWords.txt">/resources/stopWords.txt</a>
 * 
 * @return String free of all the stop-words
 * @param text
 *            The string to be cleaned, do null check at your end
 */

enter image description here

Package Structure

答案 1 :(得分:2)

不是一个完整的答案,而是IDE的功能

如果使用Intellij IDEA,则可能是开箱即用的。在哪里加载文件,您必须指定路径,对吗?因此,按住Ctrl键并单击某个路径,Intellij会将您带到该文件。

该路径是相对于类路径的,因此您具有可移植性。

它要求所有团队成员都使用Intellij,是的,不是全局解决方案,不是“文字”解决方案。

检查:

enter image description here

答案 2 :(得分:0)

我找到了解决方案。参见2 Source Files (Javadoc Guide)

在任何软件包目录下创建一个名为doc-files的目录

src/
  main/
    java/
      com/
        doc-files/
        MySource.java   // package com;
        mycompany/
          doc-files/
            some.txt
          Company.java  // package com.mycompany

在其中放置资源文件。

现在链接他们链接此链接。

/**
 * <a href="doc-files/some.txt">some</a>
 */
class Company {
}

构建Javadoc时,链接起作用。

请注意,将那些doc-files目录放在src/main/resource下是行不通的。

答案 3 :(得分:0)

这将在IntelliJ IDEA中创建一个可单击的链接,但仅链接到目录:-/。

src/test/resources/some/path/

/**
 * {@link some.path}
 */

如果您添加filename.ext,或者目录是非法的程序包名称(例如:以数字开头),则均无效。

到目前为止,我发现这是最好的。在我发现的测试中,虽然不是很好,但是仍然可以方便地提示静态文件的使用情况(例如外部API响应)并提供指向其位置的链接。