java.lang.ClassFormatError: отсутствует атрибут кода в методе, который не является собственным или абстрактным в файле класса javax / Faces / FacesException

1

Я пытаюсь запустить проект JSF с помощью tomcat и eclipse.

Я только что реализовал простую страницу с HelloWorld. Когда я пытаюсь запустить сервер, он бросает следующую ошибку:

SEVERE: Error configuring application listener of class org.apache.catalina.deploy.ApplicationListener@2fbb7466
java.lang.ClassFormatError: Absent Code attribute in method that is not native or abstract in class file javax/faces/FacesException
    at java.lang.ClassLoader.defineClass1(Native Method)
    at java.lang.ClassLoader.defineClass(ClassLoader.java:792)
    at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142)
    at org.apache.catalina.loader.WebappClassLoader.findClassInternal(WebappClassLoader.java:2895)
    at org.apache.catalina.loader.WebappClassLoader.findClass(WebappClassLoader.java:1173)
    at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1681)
    at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1559)
    at java.lang.Class.getDeclaredConstructors0(Native Method)
    at java.lang.Class.privateGetDeclaredConstructors(Class.java:2483)
    at java.lang.Class.getConstructor0(Class.java:2793)
    at java.lang.Class.newInstance(Class.java:345)
    at org.apache.catalina.core.DefaultInstanceManager.newInstance(DefaultInstanceManager.java:138)
    at org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:4854)
    at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5434)
    at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150)
    at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1559)
    at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1549)
    at java.util.concurrent.FutureTask.run(FutureTask.java:262)
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
    at java.lang.Thread.run(Thread.java:724)

Я включил следующие библиотеки в classpath:

  • javae-апи-6.0.jar
  • javae-веб-апи-6.0.jar
  • javax-сервлет-апи-3.1.0.jar
  • JSF-апи-2.1.jar
  • JSF-осущ-1.2.jar
  • JSTL-1.2.jar
  • primefaces-5.0.jar

Пожалуйста, помогите мне решить эту ошибку.

  • 1
    Посмотри здесь Надеюсь это поможет.
  • 0
    @Jens Дженс, да, это помогло мне. Смотрите мой ответ для деталей. Спасибо...
Теги:
jsf

1 ответ

0

После некоторого анализа я обнаружил, что я добавил библиотеки из неправильного места. Я также удалил дополнительные библиотеки из пути сборки.

Ниже приводится окончательный список зависимостей, и это сработало для меня:

<dependencies>
<dependency>
    <groupId>com.sun.faces</groupId>
    <artifactId>jsf-api</artifactId>
    <version>2.2.7</version>
</dependency>

<dependency>
    <groupId>com.sun.faces</groupId>
    <artifactId>jsf-impl</artifactId>
    <version>2.2.7</version>
</dependency>

<dependency>
    <groupId>org.primefaces</groupId>
    <artifactId>primefaces</artifactId>
    <version>5.0</version>
</dependency>

Благодарю.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню