当前位置: 首页 > 面试题库 >

当将Eclipse与FindBugs结合使用时,是否可以将错误标记为不是错误,并将其从错误列表中删除?

刘浩思
2023-03-14
问题内容

FindBugs在我的代码中发现了一个潜在的错误。但这不是错误。

是否可以将这种情况标记为“不是错误”并将其从错误列表中删除?

我已经很清楚地记录了为什么每种情况下它都不是错误。

例如。一个类实现可比较的接口。它具有compareTo方法。但是,我没有重写equals方法。

FindBugs不喜欢这样,因为JavaDocs指出建议

(x.compareTo(y)==0) == (x.equals(y))

尽管就我而言,上述条件始终都是正确的。


问题答案:

除了使用过滤器,您还可以使用SuppressWarnings批注。您必须使用findbugs包之外的注释,这意味着您需要导入或使用其完全限定名称。这是因为除了JDK
的SuppressWarnings之外,它还具有保留“类”,这是必需的,因为findbugs对编译的字节码而不是源代码进行操作。

例:

@edu.umd.cs.findbugs.annotations.SuppressWarnings(
    value="EQ_COMPARETO_USE_OBJECT_EQUALS", 
    justification="because I know better")

在一个极端的情况下,您可能不应该使用注释:如果您的代码是以jar结尾的库代码,则其他项目可以使用该代码,
您仍在使用Java5。原因是JDK中的错误,如果注释不在类路径中,则会导致javac崩溃。



 类似资料:
  • 问题内容: 此问题与跨域资源共享(CORS)有关。 如果在发出CORS请求时出现错误,Chrome(以及AFAIK其他浏览器)会将错误记录到错误控制台。消息示例可能如下所示: XMLHttpRequest无法加载。原产地不被访问控制允许来源允许的。 我想知道是否有办法以编程方式获取此错误消息?我尝试将调用包装在try/catch中,也尝试添加事件处理程序。两者均未收到错误消息。 问题答案: 看到:

  • valgrind快速启动页面提到: 这将我引向这样一个问题:是否有充分的理由不在生产中从程序中消除这样的错误?发布包含此类错误的程序有什么好处吗?如果有,开发人员如何保护它的安全,尽管据我所知,包含此类错误的程序可以不可预测地运行,并且无法对其行为做出一般假设?如果是这样,你能提供真实世界的例子,说明程序运行时有这些错误比没有错误更好吗?

  • 问题内容: 我正在使用Phonegap + React.js和Socket.io开发一个应用程序。但是,随后React-Native发行了,其原生感觉很棒。 我试图让socket.io-client与React Native一起工作,但是不幸的是没有成功。我做了一些研究,发现与此问题中描述的错误完全相同:https : //github.com/facebook/react- native/iss

  • 我正在为我的新项目学习mongoDB。我创建了一个capped集合,但当我试图从mongoDB中的capped集合中删除文档时,出现了一个错误,如下所示:, db。麦可尔。删除({“_id”:ObjectId(“57bef716e5ff2cbb540e403b”)) WriteResult({“nRemoved”:0,“writeError”:{“code”:20,“errmsg”:“无法从封顶集

  • 问题内容: 我已经尝试了一个月,做了很多研究,将其翻译成Fragment,因为我的导航菜单需要它。基本上,我正在创建一个应用程序。我正在使用MainActvity使用Fragment运行导航菜单。然后,我将不得不使用这些类并将其作为Fragment运行,但是有一次我不得不使用AppCompatActivity,因此我将其转换为Fragment,但遇到了Intent和其他变量的问题。我需要帮助。我只

  • 我正在用Soundpool开发一个Android应用程序。每次播放声音时,都会在LogCat中记录一个错误,类型为:E/SoundPool(11873):sampleid=33,leftvolume=0.779528,rightvolume=0.779528,priority=1,loop=0,rate=1.000000 这个错误是什么意思?有可能禁用这些日志吗?我想记录这些错误是相当耗时的,因为