Find path to offending non-Serializable member variable
Pass the flag -Dsun.io.serialization.extendedDebugInfo=true
to the JVM and it should give you exactly the information you want, when a NotSerializableException
is thrown.
I had the same problem and I also implemented the crawler thing you talked about. If somebody is still interested in it, I presented the code here: A good way to find unserializable fields in Java