错误:包org.slf4j不存在。

26
我正在尝试使用Netbeans在Java中创建一个程序,希望使用org.slf4j。 我认为已经将足够数量的slf4j jar文件放置在我的CLASS PATH中。 我已经在我的CLASS PATH中放置了slf4j-api、slf4j-jcl、slf4j-jdk14、slf4j-nop和slf4j-simple。
我的问题是:我是否将错误的jar文件放入了我的CLASS PATH中?slf4j文件夹的Zip文件包含大量jar文件,为什么会有这么多可执行的jar文件包括在SLF4J中?
最终,该程序需要每次比较两个pdf文件,并在文件不同的情况下输出错误消息。 请问是否有任何可以包含的内容,以便不必处理这个SLF4J软件包。 下面是我尝试运行该软件包的位置。
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;

1
请添加错误退出。请查看 https://dev59.com/c2oy5IYBdhLWcg3wQr5i - Rubén Pozo
嗨 Ruben,感谢你的评论。我正在使用 NetBeans 开发 Java。我进入了库并找到了 POM.XML 文件,但是我找不到 log4j 依赖项,而且 pom.xml 文件也无法编辑。 - Vutana
我已经下载了SLF4J,可能它与以前的版本不同。SLF4J压缩文件中有许多不同的子文件夹。我将几乎所有的子文件夹都放在了主路径下。但是改变POM中的范围似乎并没有解决问题。我应该下载Apache log4j,你有什么想法吗? - Vutana
如果您有一个Maven项目,可以尝试将文件放入本地Maven存储库中。当Maven下载依赖项时,通常会将文件放入用户文件夹中:{user folder}.m2\repository\org\slf4j - Rubén Pozo
你是怎么将添加到你的类路径中的?如果你在谈论CLASSPATH环境变量,那就忘了它的存在吧。大多数运行Java应用程序的方式都不使用它,而且通常它会使那些使用它的应用程序变得非常脆弱。 - Mark Rotteveel
3个回答

25

按照以下方式设置依赖项。

在 Maven 中

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

在Gradle中

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

1
版本1.6.6相当老了,目前最新的是1.7.28。 - Mark Rotteveel
1
没问题,我们可以这样添加依赖项。 - Pramuditha
截至2022年5月26日,最新的稳定版本是1.7.36。 - aumiom
是的,这只是一个例子。我已经将其编辑成通用的。 - Pramuditha

4

3
在 build.gradle(第二个文件)中看 dependencies 部分,添加以下代码行:
dependencies {
   ...
   implementation 'org.apache.directory.studio:org.slf4j.api:1.7.2'
}

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接