我正在尝试为程序生成一个javadoc,但整个第一个块未包含在文档中。我有两个类文件,Item.java和Proj1.java,但都不会包含第一个注释块。在Item.java中,它看起来像这样:
/************************************************************************
* @author Namfuak
* @version 1.0, Spring 2014
* Class file of an Item to use in proj1.
* Contains the name and price
* of the item, as well as a few helpful methods.
************************************************************************/
import java.text.DecimalFormat;
/**
Contains data for each Item to be tallied. Item name and price are
stored in private variables.
*/
奇怪的是,虽然第二个块(“包含数据......”)也在类范围之外,但它包含在文档中。我已经尝试重新格式化标题块以没有额外的星号,没有星号起始行,并且在import语句之后,但行为不会改变。我在命令行语句中包含但未包含“-author”和“-version”标记,没有任何更改。 javadoc命令行输出并未显示有任何警告或错误。
答案 0 :(得分:5)
因为javadoc编译器无法识别它。
http://www.oracle.com/technetwork/java/javase/documentation/index-137868.html#principles
具体做法是:
这就是第二位 变成Javadoc的原因。
从评论中修改:您不能在课程顶部有两个区块;只有一个会被使用。此外,规范还声明导入之前的注释将被忽略。
http://docs.oracle.com/javase/7/docs/technotes/tools/solaris/javadoc.html#documentationcomments
注释的放置 - 文档注释仅在紧接在类,接口,构造函数,方法或字段声明之前放置时才会被识别 - 请参阅类示例,方法示例和字段示例。放置在方法体中的文档注释将被忽略。 Javadoc工具只能识别每个声明语句只有一个文档注释。
常见的错误是在类注释和类声明之间放置一个import语句。避免这种情况,因为Javadoc工具将忽略类注释。
该课程应如下所示:
import java.text.DecimalFormat;
/**
* Contains data for each Item to be tallied. Item name and price are
* stored in private variables.
* @author Namfuak
* @version 1.0, Spring 2014
*/
public class MyClass {
答案 1 :(得分:1)
添加
@author Namfuak
@version 1.0, Spring 2014
在第二个评论栏中。
它应该在评论栏中 这是在你的课程代码开始之前。
详情请见此处。
另外,在调用JavaDoc工具时使用-author
。