Class loaders are at the core of the Java language. Java EE containers, OSGi, NetBeans modules, Tapestry 5, Grails, and many others use class loaders heavily. Yet if something went wrong, would you know how to solve it?
This session takes a tour of the Java class loading mechanism, from both the JVM and Java developer points of view. It looks at typical class loading problems and how to solve them. IncompatibleClassChangeError, ClassNoDefError, LinkageError and many others are symptoms of specific things going wrong that you can usually find and fix. For each problem, the presentation goes through a hands-on demo with a corresponding solution. It also takes a look at how and why class loaders leak and how you can remedy that.