Подтвердить что ты не робот

Java.lang.NoClassDefFoundError: org.slf4j.LoggerFactory

Я получаю ошибку, как указано ниже, при запуске утилиты feed. Я пытаюсь загрузить изображение " logo.png". Файл jar slf4j также доступен в пути пути выполнения. Но все же я получаю эту ошибку.

Oct 16, 2012 7:34:11 PM com.ibm.commerce.foundation.dataload.FeedRetriever  invokeDataLoad
SEVERE: An error occurred while performing data load.
Throwable occurred: com.ibm.commerce.foundation.dataload.exception.DataLoadException: 
An error occurred while executing the data load. 

java.lang.NoClassDefFoundError: org.slf4j.LoggerFactory

    at com.ibm.commerce.foundation.dataload.DataLoaderMain.execute(DataLoaderMain.java:664)
    at com.ibm.commerce.content.commands.DataLoadInvoker.execute(DataLoadInvoker.java:101)
    at com.ibm.commerce.foundation.dataload.FeedRetriever.invokeDataLoad(FeedRetriever.java:244)
    at com.ibm.commerce.foundation.dataload.FeedRetriever.execute(FeedRetriever.java:172)
    at com.ibm.commerce.foundation.dataload.FeedRetriever.main(FeedRetriever.java:321)
Caused by: java.lang.RuntimeException: java.lang.NoClassDefFoundError: org.slf4j.LoggerFactory
    at com.ibm.commerce.foundation.dataload.DataLoaderMain.execute(DataLoaderMain.java:488)
    ... 4 more
Caused by: java.lang.NoClassDefFoundError: org.slf4j.LoggerFactory
    at org.apache.wink.client.ClientConfig.<clinit>(ClientConfig.java:52)
    at java.lang.J9VMInternals.initializeImpl(Native Method)
    at java.lang.J9VMInternals.initialize(J9VMInternals.java:200)
    at java.lang.J9VMInternals.initialize(J9VMInternals.java:167)
    at com.ibm.commerce.foundation.dataload.feedreader.AtomReader.getFeed(AtomReader.java:104)
    at com.ibm.commerce.foundation.dataload.feedreader.AtomReader.getEntries(AtomReader.java:147)
    at com.ibm.commerce.foundation.dataload.feedreader.AtomReader.getEntries(AtomReader.java:1)
    at com.ibm.commerce.foundation.dataload.feedreader.BaseFeedReader.init(BaseFeedReader.java:252)
    at com.ibm.commerce.foundation.dataload.AbstractBusinessObjectLoader.initializeDataReaders(AbstractBusinessObjectLoader.java:1344)
    at com.ibm.commerce.foundation.dataload.AbstractBusinessObjectLoader.init(AbstractBusinessObjectLoader.java:369)
    at com.ibm.commerce.foundation.dataload.BusinessObjectLoader.init(BusinessObjectLoader.java:65)
    at com.ibm.commerce.foundation.dataload.DataLoaderMain.execute(DataLoaderMain.java:431)
    ... 4 more
Caused by: java.lang.ClassNotFoundException: org.slf4j.LoggerFactory
    at java.lang.ClassNotFoundException.<init>(ClassNotFoundException.java:76)
    at java.net.URLClassLoader.findClass(URLClassLoader.java:396)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:660)
    at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:358)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:626)
    ... 16 more
Oct 16, 2012 7:34:11 PM com.ibm.commerce.foundation.dataload.FeedRetriever main
SEVERE: An error occurred while performing data load.
Throwable occurred: com.ibm.commerce.foundation.dataload.exception.DataLoadException: An error has occurred.  If this problem persists, contact product support.
    at com.ibm.commerce.foundation.dataload.FeedRetriever.invokeDataLoad(FeedRetriever.java:247)
    at com.ibm.commerce.foundation.dataload.FeedRetriever.execute(FeedRetriever.java:172)
    at com.ibm.commerce.foundation.dataload.FeedRetriever.main(FeedRetriever.java:321)
4b9b3361

Ответ 2

Вы должны предоставить один из различных файлов .jar реализации SLF4J в пути к классам, а также файл .jar интерфейса. Это документировано.

Ответ 3

Загрузить slf4j-1.7.5.zip

В нем хранятся разные файлы jar.

Перейдите в → Папка интеграции после извлечения zip и включите следующие файлы jar

  • SLF4J-апи-2.0.99
  • SLF4J-простой 1.6.99
  • JUnit-3.8.1

Ответ 4

Щелкните правой кнопкой мыши по свойствам проекта и следуйте нижеуказанным шагам "Свойства проекта" → "Сборка развертывания", добавив "Записи пути сборки Java → Зависимости Maven

Ответ 5

У меня также была аналогичная проблема. У меня был проект maven и я тестировал rabbitmq. Во-первых, это показало мне аналогичную ошибку, после чего я добавил все зависимости SLF4J в проекте maven, а затем с ошибкой изменился на "Maven SLF4J: путь класса содержит несколько привязок SLF4J". Ниже приведен полный список зависимостей от pom.xlm

<dependencies>
    <dependency>
        <groupId>com.rabbitmq</groupId>
        <artifactId>amqp-client</artifactId>
        <version>4.0.0</version>
    </dependency>
    <dependency>
        <groupId>org.apache.commons</groupId>
        <artifactId>commons-lang3</artifactId>
        <version>3.0</version>
    </dependency>
    <dependency>
       <groupId>org.slf4j</groupId>
       <artifactId>slf4j-simple</artifactId>
       <version>1.7.21</version>
       <scope>compile</scope>
    </dependency>
</dependencies> 

Наконец-то это сработало.

Ответ 6

Я столкнулся с подобной проблемой, и это решило проблему для меня.

    <dependency>
        <groupId>org.slf4j</groupId>
        <artifactId>slf4j-api</artifactId>
    </dependency>

Ответ 7

Эта ошибка возникает из-за того, что указанные баны не отмечены на нашем заказе проекта и вкладке экспорта.

Выберите Project → ALT + Enter- > Java Build Path → Order and Export- > проверьте необходимые файлы jar в вашем проекте.

Наконец, очистите проект и запустите. Он будет успешно работать.

Ответ 8

Когда мы используем api jar slf4j, нам нужна любая реализация logger, такая как log4j. В моей системе у нас есть комплект, и он отлично работает.

1. slf4j-api-1.5.6.jar
2. slf4j-log4j12-1.5.6.jar
3. **log4j-1.2.15.jar**

Ответ 9

Чтобы быть более конкретным, если вам не хватает класса com.vaadin.external.org.slf4j.LoggerFactory, добавьте следующую зависимость.

<dependency>
    <groupId>com.vaadin.external.slf4j</groupId>
    <artifactId>vaadin-slf4j-jdk14</artifactId>
    <version>1.6.1</version>
</dependency>

Если вам не хватает других org.slf4j.LoggerFactory, просто перейдите в Поиск имени центрального класса Maven и найдите точное имя класса, чтобы определить, какую точную зависимость вам не хватает.

Ответ 10

Вы можете использовать ниже зависимость

<dependency>
        <groupId>log4j</groupId>
        <artifactId>log4j</artifactId>
        <version>1.2.17</version>
    </dependency>
    <dependency>
        <groupId>org.slf4j</groupId>
        <artifactId>slf4j-api</artifactId>
        <version>1.7.7</version>
    </dependency>
    <dependency>
        <groupId>org.slf4j</groupId>
        <artifactId>slf4j-log4j12</artifactId>
        <version>1.7.7</version>
    </dependency>

Ответ 12

NoClassDefFoundError означает, что netbeans или сервер не могут найти файл.

Я предполагаю, что он не может найти slf4j.jar см. здесь

Ответ 13

использовать maven, он загрузит все необходимые файлы jar для вас.

в этом случае вам понадобятся следующие файлы jar:

SLF4J-log4j12-1.6.1.jar SLF4J-апи-1.6.1.jar

Эти банки также будут зависеть от версии cassandra, которую вы используете.  Существуют зависимости от версии cassandra, версии jar и версии jdk, которые вы используете.

Вы можете использовать: jdk1.6 с: cassandra 1.1.12 и вышеупомянутые банки.

Ответ 14

убедитесь, что ваш MANIFEST.MF содержит имя ссылочной баночки в моем приложении slf4j-api- *. банк.

Ответ 15

Вам нужна библиотека slf4j-api. В большинстве случаев требуется только slf4j-api и slf4j-jkd14:

Здесь вы можете скачать версию 1.7.2:

slf4j-api-1.7.2.jar
slf4j-jkd14-1.7.2jar

Если вам нужен пример, чтобы увидеть, как они используются, ссылается на этот учебник: http://www.ibm.com/developerworks/java/library/j-hangman-app/index.html

Все код для учебника доступен

Ответ 16

получить совместимую версию этого jar slf4j-jdk14 и добавить его как зависимость. это решило проблему для меня.

Ответ 17

Вам нужна библиотека slf4j-api и jar slf4j-log4j12-1.7.25. Скопируйте эти файлы в вашу папку project-> WEBINF-> lib и в папку lib сервера tomcat для успешного выполнения.

Ответ 18

Когда вы копируете зависимость из репозитория maven:

<scope>test</scope>

Попробуйте удалить его из зависимостей в pom.xml следующим образом.

<!-- https://mvnrepository.com/artifact/ch.qos.logback/logback-classic -->
<dependency>
    <groupId>ch.qos.logback</groupId>
    <artifactId>logback-classic</artifactId>
    <version>1.2.3</version>
</dependency>

Это работает для меня. Я надеюсь, что это будет полезно для кого-то еще.

Ответ 19

это работало для меня/свойства /maven снимите флажок разрешать зависимости от проектов Workspace.

Ответ 20

Класс LoggerFactory исчезает в соответствии с сообщением об ошибке:

java.lang.NoClassDefFoundError: org.slf4j.LoggerFactory

Судя по всему, файл slf4j.jar по какой-то причине не загружается.