Я не могу на всю жизнь найти определение того, что действительно делает флаг Java CMSClassUnloadingEnabled, за исключением некоторых очень нечетких определений высокого уровня, таких как "избавляется от ваших проблем PermGen" (который он не поддерживает, btw).
Я просмотрел сайт Sun/Oracle и даже список опций фактически не говорит, что он делает.
Основываясь на имени флага, я предполагаю, что CMS Garbage Collector по умолчанию не разгружает классы, и этот флаг включает его, но я не могу быть уверен.