У меня есть классная сборка, реализующая IASSEMBLE.
Я вижу следующую ошибку при запуске приложения
Caused by: java.lang.IllegalAccessError: class <Assembly > cannot access its superinterface <IAssembly>
at java.lang.ClassLoader.defineClass1(Native Method)
Код сборки
class package.Assembly implements IAssembly {
}
IASSEMBLY
interface IAssembly { //note -this is not public, so uses default protected
}
Сборка и IASSEMBLE существует в двух разных банках. Оба банки загружены разными классовыми загрузками. Класс Ассамблеи загружен в детский класс, IASSEMBLY - родитель. Классовые погрузчики используют цепочку.
В нормальных случаях это работает. Ошибка возникает, когда я запускаю свое приложение после инструментальных банок с помощью Cobertura. С внесением обозначения все работает нормально. Может ли комбинировать Cobertura привести к такой ошибке? Или это ошибка в любом случае ожидание быть обнаруженным, но с Cobertura ошибка быстро выставлена.
, делая интерфейс «публичный» ошибка уходит.