相关疑难解决方法(0)

jvisualvm去哪儿了?

我正在运行Mac OSX Snow Leopard.

我总是使用Mac OSX的常规软件更新功能更新Java.

我过去使用过Java jvisualvm工具取得了巨大的成功.

今天早上我像往常一样输入jvisualvm命令行.我收到以下错误:

 $ jvisualvm
 Unable to locate an executable at "/System/Library/Java/JavaVirtualMachines/1.6.0.jdk/Contents/Home/bin/jvisualvm" (-1)
Run Code Online (Sandbox Code Playgroud)

所有的其他Java工具(java,javac,jps等),工作得很好.

/System/Library/Java/JavaVirtualMachines/1.6.0.jdk/Contents/Home/bin确实不包含jvisualvm(突然间).

/usr/libexec/java_home 收益率:

$ /usr/libexec/java_home
/System/Library/Java/JavaVirtualMachines/1.6.0.jdk/Contents/Home
Run Code Online (Sandbox Code Playgroud)

WTF?

java macos

46
推荐指数
4
解决办法
4万
查看次数

如何在我的代码中找到所有未关闭的实例和对象?

我的团队有相当多的代码。最近我发现了一些没有正确关闭的对象。
如何找到所有未关闭或不在try-with-resources块内的实例?
一些对象,例如Statement,ResultSet甚至没有显示警告消息。

是否有用于显示所有这些事件的扩展工具?
我正在使用 Eclipse。

java try-with-resources autocloseable

5
推荐指数
1
解决办法
670
查看次数

FindBugs:“可能无法关闭流” - 这在 InputStream 的情况下有效吗?

在我的 Java 代码中,我启动了一个新进程,然后获取其输入流以读取它:

BufferedReader reader = new BufferedReader(new InputStreamReader(process.getInputStream()));
Run Code Online (Sandbox Code Playgroud)

FindBugs 在这里报告错误:

may fail to close stream
Pattern id: OS_OPEN_STREAM, type: OS, category: BAD_PRACTICE
Run Code Online (Sandbox Code Playgroud)

我必须关闭另一个进程的 InputStream 吗?更重要的是,根据它的 Javadoc, InputStream#close() 什么都不做。那么这是误报,还是应该在完成后真正关闭流程的输入流?

java findbugs stream

3
推荐指数
1
解决办法
6665
查看次数