'kill java' doesn't kill java
Maybe its ignoring the signal for some reason. Did you try kill -9
?
But please note: kill -9
cannot be ignored or trapped. If a process sees signal 9, it has no choice but to die. It can't do anything else - not even gracefully clean up its files.
I occasionally have to kill -9. However, if this is happening regularly, you should fix the issue that is causing it. Kill -9 means something is way off.
In general, I only see this happen when you get yourself into serious memory thrash mode, which means you either need more system memory, or you're giving java too much memory when you start. More commonly, though, especially if you're developing stuff, you can see this when you run out of "PermGen" memory.
http://www.brokenbuild.com/blog/2006/08/04/java-jvm-gc-permgen-and-memory-options/
In any case, it may be due to OutOfMemory errors of some sort.