我有一段代码,将Ojbect写入字节数组流:
static byte[] toBytes(MyTokens tokens) throws IOException {
ByteArrayOutputStream out = null;
ObjectOutput s = null;
try {
out = new ByteArrayOutputStream();
try {
s = new ObjectOutputStream(out);
s.writeObject(tokens);
} finally {
try {
s.close();
} catch (Exception e) {
throw new CSBRuntimeException(e);
}
}
} catch (Exception e) {
throw new CSBRuntimeException(e);
} finally {
IOUtils.closeQuietly(out);
}
return out.toByteArray();
}
然而,FindBugs一直在抱怨line:
s = new ObjectOutputStream(out);
“可能无法关闭流”——糟糕的实践——开放流。有人能帮忙吗?
这意味着s.close()
将尝试关闭底层流,但可能无法完成。所以为了确保你也应该自己关闭它。试着把添加出来。关闭()
,查看警告是否消失。
我认为FindBugs不明白借据tils.close悄悄地关闭。
无论如何,关闭ObjectOutputStream就足够了,它将关闭底层ByteArrayOutputStream。这是ObjectOutputStream.close实现
public void close() throws IOException {
flush();
clear();
bout.close();
}
所以你可以简化你的代码
ByteArrayOutputStream out = new ByteArrayOutputStream();
ObjectOutputStream s = new ObjectOutputStream(out);
try {
s.writeObject(1);
} finally {
IOUtils.closeQuietly(s);
}
或者,如果您使用的是Java 7
ByteArrayOutputStream out = new ByteArrayOutputStream();
try (ObjectOutputStream s = new ObjectOutputStream(out)) {
s.writeObject(1);
}
我有一个错误不允许我继续,我只使用了一个接口,一个实现该接口的类和一个配置类,我使用了标记,但是bean没有被创建,这是我的接口 这是实现接口的类: 这是配置类 这是我测试它的主要地方 但是我得到了错误: 这些是我的包裹 有什么问题吗?
我正在使用Spring JDBCTemboard访问数据库中的数据,它工作正常。但是FindBugs在我的代码片段中指出了一个小问题。 代码: FindBugs问题: 方法可能无法清理流或资源的检查异常在这一行 有人能告诉我这到底是什么吗?我们如何解决这个问题? 我们将不胜感激:)
我使用Selenium在弹出消息窗口时收集数据,该窗口只是一个手册,所以我想将其关闭。我尝试了很多方法,比如:,,。。。或者根本不起作用。下面是该网站的html截图。 我感谢你的指导。 在此处输入图像描述
我正在做一个实验2D物理的个人项目。现在,我正在尝试设置JFrame,以便它每秒更新60次。但是,当我调用方法开始更新JFrame时,我不能关闭JFrame。但是如果我省略了调用方法的部分,我可以关闭JFrame。这是主要代码: 这是Frame的代码: 如果我不在start()中调用updater(),我可以关闭JFrame。我知道我离开running=true,但它仍然应该关闭,因为这在我的旧计
我有以下代码段: 然而,findbugs说有一种不好的做法: It:Iterator next()方法不能抛出NoSuchElementException(It\u NO\u SUCH\u元素),该类实现java。util。迭代器接口。然而,它的next()方法不能抛出java。util。无接触元素异常。应该更改next()方法,以便在没有更多元素可返回时调用它时抛出NoTouchElementE
有谁知道什么时候可以使用Javhelp 3.17.0-GA吗? Javaassit中有一个bug(在3.17.0-GA中修复)在与Java 7一起使用时破坏了PowerMock:https://issues.jboss.org/browse/JASSIST-160?focusedCommentId=12718716 相关的PowerMock bughttp://code.google.com/p/