“NoClassDefFoundError: не Мог инициализировать класс” ошибка

Намного более простой:

request.session.session_key

Примечание ключ будет только существовать, если будет сессия, никакой ключ, никакая сессия. Можно использовать это, чтобы протестировать, если сессия существует. Если Вы хотите создать сессию, вызов создают.

74
задан Michael Wiles 9 July 2015 в 08:01
поделиться

2 ответа

Отсутствует необходимое определение класса; обычно вызывается тем, что требуемый JAR не находится в пути к классам.

Из J2SE API :

открытый класс NoClassDefFoundError extends LinkageError

Вызывается, если виртуальная машина Java или экземпляр ClassLoader пытается загрузить в определении класса (как часть обычного вызова метода или как часть создание нового экземпляра с использованием нового выражение) и нет определения класс может быть найден.

Определение искомого класса существовал, когда выполняющийся в данный момент класс был скомпилирован, но определение больше не может быть найдено.

6
ответ дан 24 November 2019 в 11:50
поделиться

Ошибка NoClassDefFound - это расплывчатая ошибка, которая часто скрывает более серьезную проблему. Это не то же самое, что ClassNotFoundException (которое генерируется, когда класса просто нет).

NoClassDefFound может указывать на то, что класса нет, как указывают javadocs, но обычно он возникает, когда загрузчик классов загружает байты для класса и вызывает для них "defineClass". Также внимательно проверьте свою полную трассировку стека на наличие других подсказок или возможных «причинных» исключений (хотя ваша конкретная трассировка не показывает их).

Первое место, куда нужно обратить внимание, когда вы получаете NoClassDefFoundError, - это статические биты вашего класса, то есть любая инициализация, которая происходит во время определения класса. Если это не удается, он выдаст NoClassDefFoundError - это ' s должен вызывать исключение ExceptionInInitializerError и указывать подробности проблемы, но, по моему опыту, они встречаются редко. Он вызовет исключение ExceptionInInitializerError только при первой попытке определить класс, после чего просто выбрасывает NoClassDefFound. Так что взгляните на предыдущие журналы.

Я бы посоветовал взглянуть на код в этой строке HibernateTransactionInterceptor и посмотреть, что для этого требуется. Кажется, что он не может определить класс SpringFactory. Так что, возможно, проверьте код инициализации в этом классе, это может помочь.

Поэтому я бы посоветовал взглянуть на код в этой строке HibernateTransactionInterceptor и узнать, что для этого требуется. Кажется, что он не может определить класс SpringFactory. Так что, возможно, проверьте код инициализации в этом классе, это может помочь.

Поэтому я бы посоветовал взглянуть на код в этой строке HibernateTransactionInterceptor и посмотреть, что для этого требуется. Кажется, что он не может определить класс SpringFactory. Так что, возможно, проверьте код инициализации в этом классе, это может помочь. Если вы можете отладить его, остановите его на последней строке выше (17) и выполните отладку, чтобы вы могли попытаться найти точную строку, которая вызывает исключение. Также проверьте выше в журнале, если вам очень повезет, может быть ExceptionInInitializerError.

194
ответ дан 24 November 2019 в 11:50
поделиться
Другие вопросы по тегам:

Похожие вопросы: