Eclipse - Не удалось загрузить класс "org.slf4j.impl.StaticLoggerBinder"
Возможный дубликат:
SLF4J: Не удалось загрузить класс org.slf4j.impl.StaticLoggerBinder error
Я использую eclipse juno для запуска другого кода Java с помощью maven (плагин m2eclipse). Но я получаю следующее сообщение:
SLF4J: Failed to load class "org.slf4j.impl.StaticLoggerBinder".
SLF4J: Defaulting to no-operation (NOP) logger implementation
SLF4J: See http://www.slf4j.org/codes.html#StaticLoggerBinder for further details.
На официальном веб-сайте . Но я все еще получаю ошибку.
Пожалуйста, расскажите мне, что является правильным решением. Я новичок в Java.
Также может кто-то упомянуть, что именно должно быть значением для переменных JAVA_HOME
, CLASSPATH
и CLASS
. Я смущен, должен ли он быть путь к jre
или jdk
или любому?
UPDATE:
Зависимость для slf4j
существует в проекте pom.xml
.
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-api</artifactId>
<version>1.5.6</version>
<type>jar</type>
</dependency>
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-simple</artifactId>
<version>1.5.6</version>
</dependency>
Я обновил свой проект. Кроме того, slf4j-api-1.5.6.jar
и slf4j-simple-1.5.6.jar
отображаются в "зависимостях Maven" в моем проекте. И org.slf4j.impl.StaticLoggerBinder.class
также присутствует в slf4j-simple-1.5.6.jar
Ответы
Ответ 1
Eclipse Juno, Indigo и Kepler при использовании вложенной версии maven (m2e) не подавляют сообщение SLF4J: Не удалось загрузить класс "org.slf4j.impl.StaticLoggerBinder". Такое поведение присутствует в версии m2e 1.1.0.20120530-0009 и далее.
Хотя это указано как ошибка, ваши журналы будут сохранены в обычном режиме. Выделенная ошибка будет по-прежнему присутствовать до тех пор, пока не будет исправлена эта ошибка. Подробнее об этом в сайте поддержки m2e.
Текущее доступное решение - использовать внешнюю версию maven, а не комплектную версию Eclipse. Вы можете найти об этом решении и более подробную информацию об этой ошибке в вопросе ниже, который, как я полагаю, описывает ту же проблему, с которой вы сталкиваетесь.
SLF4J: Не удалось загрузить класс "org.slf4j.impl.StaticLoggerBinder" . ошибка
Ответ 2
Вы обновили проект (щелкните правой кнопкой мыши по проекту, "Maven" > "Обновить проект..." )? В противном случае вам нужно проверить, содержит ли pom.xml
необходимые зависимости slf4j, например:
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>jcl-over-slf4j</artifactId>
<version>1.7.0</version>
<scope>runtime</scope>
</dependency>
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-api</artifactId>
<version>1.7.0</version>
<scope>runtime</scope>
</dependency>
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-log4j12</artifactId>
<version>1.7.0</version>
<scope>runtime</scope>
</dependency>
<dependency>
<groupId>log4j</groupId>
<artifactId>log4j</artifactId>
<version>1.2.14</version>
</dependency>
Ответ 3
После размещения файла jar в нужном месте вам нужно добавить файл jar с помощью щелкните правой кнопкой мыши на
Проект → свойства → Путь сборки Java → Библиотеки → Добавить Jar.