在javadoc

时间:2016-02-27 14:06:34

标签: java javadoc

我想为名为abc.java的java文件创建javadoc 源代码放在

C:/project1/src/ 

。它使用包com.mypack,因此类文件放在

C:/project1/src/com/mypack/

现在,当我想生成javadoc时,我将命令从project1目录运行为

javadoc -d ./src -sourcepath ./src

显示没有指定包或类

当我跑

javadoc -d ./src -sourcepath ./src com.mypack

它显示包com.mypack

的无源文件

我知道sourcepath用于给出sourcefile所在的位置,所以应该只用src作为源路径给出正确的结果,但这不是为什么???

但是当我将abc.java移动到project1/src/com/mypack目录并现在将源路径作为

javadoc -d ./src -sourcepath ./src com.mypack

然后它生成javadoc所以你能清楚地知道在javadoc中何时以及如何使用sourcepath?

1 个答案:

答案 0 :(得分:1)

所有Java工具(javac,javadoc,IDE等)都希望Java源文件和类文件存储在与包结构完全匹配的目录结构中。因此,如果您的类位于包com.mypack中,则.java源文件应位于src/com/mypack中。不在src

您也不应将.class文件存储在src目录(用于源文件)中。使用javac -d ./classes(例如)使编译器将.class文件存储在classes目录中。并且javac会自动将您的.class文件放在classes/com/mypack下,以尊重包结构。

使用javadoc执行相同操作:不要将文档存储在src目录(用于源文件)中。使用javadoc -d ./doc使javadoc将文档存储在doc目录中。

一旦您熟悉这些约定和工具,我建议使用真正的构建工具(如gradle或Maven,虽然我更喜欢gradle),并采用他们的项目布局约定(他们使用相同的) 。