【问题标题】:error: package org.slf4j does not exist错误:包 org.slf4j 不存在
【发布时间】:2018-06-21 05:01:32
【问题描述】:

我正在尝试使用 Netbeans 在 Java 中创建程序。我正在尝试使用 org.slf4j。我想我已经在我的 CLASS PATH 中放置了足够数量的 slf4j jar 文件。我在我的类路径中放置了 slf4j-api、slf4j-jcl、slf4j-jdk14、slf4j-nop 和 slf4j-simple。

我的问题是:我是否在类路径中放置了错误的 jar 文件,slf4j 文件夹的 Zip 文件包含大量 jar 文件。为什么 SLF4J 包含这么多可执行的 jar 文件。

最终,程序需要一次比较 2 个 pdf 文件,如果文件不同,则吐出错误消息。有谁知道那里有什么我可以包含的,所以我不必处理这个 SLF4J 包。 下面是我尝试运行包的地方。

导入 org.slf4j.Logger;

导入 org.slf4j.LoggerFactory;

【问题讨论】:

  • 请添加错误退出。看看stackoverflow.com/questions/8667640/…
  • 您好鲁本,感谢您的评论。我在 NetBeans for Java 中。我进入图书馆并找到了 POM.XML 文件,但我找不到任何 log4j 依赖项,最重要的是 pom.xml 文件是不可编辑的。
  • 我下载了SLF4J,可能不一样。 SLF4J zip 文件有一大堆不同的 SLF4J 子文件夹。我将它们几乎都放在了主路径中。更改 POM 中的范围似乎无法解决问题。我应该下载 Apache log4j,有什么想法吗?
  • 如果您有一个 maven 项目,您可以尝试将文件放入本地 maven 存储库。 maven 下载依赖项时,通常会将文件放入用户文件夹:{user folder}\.m2\repository\org\slf4j
  • 你是如何添加到你的类路径中的?如果您在谈论 CLASSPATH 环境变量,请忘记它的存在。大多数运行 Java 应用程序的方式都不使用它,而且通常它会使使用它的应用程序变得相当脆弱。

标签: java netbeans slf4j


【解决方案1】:

如下设置依赖。

在 Maven 中

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

在 Gradle 中

dependencies {
   compile group: 'org.slf4j', name: 'slf4j-api', version: '1.7.28'
}

【讨论】:

  • 1.6.6 版已经很老了。当前最新的是 1.7.28。
  • 是的,没关系。我们可以像这样添加依赖项。
【解决方案2】:

在 build.gladle(第二个)中查看依赖项并添加以下行:

dependencies {
   ...
   implementation 'org.apache.directory.studio:org.slf4j.api:1.7.2'
}

【讨论】:

    【解决方案3】:

    在 Gradle 中添加以下依赖项:

    implementation 'org.slf4j:slf4j-api:1.7.28'
    implementation 'org.slf4j:slf4j-simple:1.7.28' 
    

    最后一个依赖需要添加到Resolve "Failed to load class org.slf4j.impl.StaticLoggerBinder"

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2011-10-03
      • 1970-01-01
      • 2014-10-02
      • 2016-06-01
      • 2020-03-13
      • 2015-06-20
      • 2018-07-31
      相关资源
      最近更新 更多