Eclipse debugger always blocks on ThreadPoolExecutor without any obvious exception

I'm working on my usual projects on Eclipse, it'a a J2EE app, made with Spring, Hibernate and so on. I'm using tomcat7 for this (no particular reason, I don't exploit any new feature, I just wanted to try that). Every time I debug my application, it happens that eclipse debugger pops out like it has reached a breakpoint, but it is not the case, in fact it stops on a Java Source File that is ThreadPoolExecutor. There is no stack trace on the console, it just stops. Then if I click on resume it goes on and the app works perfectly. This is what shows in the debugger window:

Daemon Thread ["http-bio-8080"-exec-2] (Suspended (exception RuntimeException))
ThreadPoolExecutor$Worker.run() line: 912
TaskThread(Thread).run() line: 619

I really can't explain this, because I'm not using ThreadPoolExecutor at all. Must be something from Tomcat, Hibernate or spring. It's very annoying because I always have to resume during debugging.

Any clues?

The posted stack trace indicates that a RuntimeException was encountered in a Daemon thread. This is typically uncaught at runtime, unless the original developer caught and handled the exception.

Typically, the debugger in Eclipse is configured to suspend execution at the location where the exception was thrown, on all uncaught exceptions. Note that the exception might be handled later, lower down in the stack frame and might not lead to the thread being terminated. This would be cause of the behavior observed.

Configuring the behavior of Eclipse is straightforward - in the Preferences Dialog, the Debug pane under Java in the tree hierarchy, has the option titled "Suspend execution on uncaught exceptions", which can be unchecked.

Ubuntu 13.10 aapt: error while loading shared libraries: libstdc++.so.6: cannot open shared object file: No such file or directory

升级到Ubuntu 13.10 之后 Eclipse 中的Android adb 会报告  Android/android-sdk-linux/build-tools/19.0.0/aapt: error while loading shared libraries: libstdc++.so.6: cannot open shared object file: No such file or directory

原因在于,在13.10 版本中,ia32_libs 被废弃了导致没有32位的lib库。

解决方法

Linux/macOS下文本比较工具Meld

Meld支持两方/三方文件/目录比较,实时编辑,CVS管理,适合比较大型项目移植。

 

官方地址:

Ubuntu 16.04系统上安装执行如下命令

macOS 系统上安装执行如下命令

参考链接


Meld:文件及目录对比工具