我在Java中工作,我的IDE是Intellij。我遇到了无法删除已读取(打开)但未正确关闭的文件的生产问题,原因很简单,因为并非代码中的所有分支都指向fileInputStream.close()。
我想知道intelij IDEA是否有办法检查我的所有代码,并告诉我是否有打开的InputStreams (例如FileInputStream),并且没有close()方法调用。
它会让我的bug修复得更好。
发布于 2014-10-12 01:23:52
使用QAPlug-FindBugs插件,它将能够检测未关闭的流:
您可以使用IDEA插件管理器安装该插件。转到设置,然后搜索插件。然后从JetBrains插件安装QAPlug和QAPlug-FindBugs。重新启动集成开发环境,右键单击您的项目并选择analyze code.Then,如果您有未关闭的流,它将报告。
如下图所示:

发布于 2014-10-12 02:02:38
升级到java7,其中FileInputStreams是自动关闭的。
http://java.dzone.com/articles/java-7-new-feature-%E2%80%93
https://stackoverflow.com/questions/26317138
复制相似问题