是否有针对错误的Java注释?

Aar*_*lla 6 java annotations

我正在寻找一个标准的Java注释,它允许我将一些代码标记为"与bug相关PROJECT-312".目标是能够创建一个报告,我可以看到代码的哪些部分被错误更改或影响.例如,这将允许看到许多错误累积的"热点".或者它可以很容易地从IDE转到JIRA/BugZilla以查看bug的全部内容.

是否有标准注释我可以/应该使用或者我必须自己编写?

PS:我知道Mylyn/Tasktop可以为我做跟踪.就我的目的而言,这些工具现在太具有破坏性,因为它们大大改变了人们每天的工作方式.

fla*_*ian 3

Oracle approach

The Java API Specification should contain assertions sufficient to enable Software Quality Assurance to write complete Java Compatibility Kit (JCK) tests.

This means that the doc comments must satisfy the needs of the conformance testing by SQA. The comments should not document bugs or how an implementation that is currently out of spec happens to work.

来自官方 JavaDoc 指南

代码错误是实现中的错误,而不是 API 规范中的错误。代码错误及其解决方法通常同样单独分布在错误报告中。但是,如果使用 Javadoc 工具为特定实现生成文档,则将此信息包含在文档注释中将非常有用,并适当地作为注释或自定义标记(例如@bug)分隔。

所以基本上它告诉你不要将文档与错误报告混合在一起。在注释中使用和解析特殊的自定义标签,对于成功的错误报告来说,您实际上不需要更多的东西。

此外,使用 Eclipse Jira Connect 或类似工具,您可以将您的@bug评论TODO自动转换为错误/任务票证。

更新

如果必须的话,您可以使用一些自定义注释。根据您的需求进行定制,记录并在整个团队中强制执行。更多内容请参见这里

@Target({ ElementType.TYPE })
@Retention(RetentionPolicy.CLASS)
// Unavailable through reflection.
public @interface classbug {}
// gives you the @classbug annotation.

@Target({ ElementType.METHOD })
@Retention(RetentionPolicy.CLASS)// Unavailable through reflection.
public @interface methodbug {}
// gives you the @methodbug annotation.
Run Code Online (Sandbox Code Playgroud)