Java 找不到HikariCP LoggerFactory类定义

Java 找不到HikariCP LoggerFactory类定义,java,hikaricp,Java,Hikaricp,我已经从(第五行)下载了HikariCP JAR,并将其放置在我的构建路径中。如果你打电话 HikariDataSource ds = new HikariDataSource(); 你会得到一个例外: Exception in thread "main" java.lang.NoClassDefFoundError: org/slf4j/LoggerFactory at com.zaxxer.hikari.HikariConfig.<clinit>(HikariConfi

我已经从(第五行)下载了HikariCP JAR,并将其放置在我的构建路径中。如果你打电话

HikariDataSource ds = new HikariDataSource();
你会得到一个例外:

Exception in thread "main" java.lang.NoClassDefFoundError: org/slf4j/LoggerFactory
    at com.zaxxer.hikari.HikariConfig.<clinit>(HikariConfig.java:45)
    at com.josevemon.microserver.App.<init>(App.java:41)
    at com.josevemon.microserver.App.main(App.java:16)
Caused by: java.lang.ClassNotFoundException: org.slf4j.LoggerFactory
    at java.net.URLClassLoader$1.run(URLClassLoader.java:372)
    at java.net.URLClassLoader$1.run(URLClassLoader.java:361)
    at java.security.AccessController.doPrivileged(Native Method)
    at java.net.URLClassLoader.findClass(URLClassLoader.java:360)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
    at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:308)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
    ... 3 more
线程“main”java.lang.NoClassDefFoundError中的异常:org/slf4j/LoggerFactory 位于com.zaxxer.hikari.HikariConfig(HikariConfig.java:45) 在com.josevemon.microserver.App.(App.java:41) 位于com.josevemon.microserver.App.main(App.java:16) 原因:java.lang.ClassNotFoundException:org.slf4j.LoggerFactory 在java.net.URLClassLoader$1.run(URLClassLoader.java:372) 在java.net.URLClassLoader$1.run(URLClassLoader.java:361) 位于java.security.AccessController.doPrivileged(本机方法) 位于java.net.URLClassLoader.findClass(URLClassLoader.java:360) 位于java.lang.ClassLoader.loadClass(ClassLoader.java:424) 位于sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:308) 位于java.lang.ClassLoader.loadClass(ClassLoader.java:357) ... 3个以上 据此间评论:"

我不知道你是在什么环境下开发的,IDE之类的, 但这是一个简单的类路径问题,HikariCP jar不在其中 运行时的类路径。显然,它在编译时就在路径中 否则你就不会走这么远了


所以HikariCP在编译时在我的路径中,但不是在运行时。那么,如何在运行时使用它呢?我正在使用Eclipse Luna。

您需要在类路径中包括以下slf4j JAR:

  • slf4j-jdk14-1.7.10.jar
  • slf4j-api-1.7.22.jar
我使用maven,因此通过将slf4j-jdk14-1.7.10.jar添加到pom文件中,它会自动添加slf4j-api-1.7.22.jar。在您的情况下,您可以从以下位置下载jar文件:


HikariCP使用Slf4j作为日志API,您可以下载它并将其添加到类路径。@vanOekel,谢谢,但现在它说它无法加载
org.Slf4j.impl.StaticLoggerBinder
!您还需要至少slf4j“简单”记录器实现。浏览一下他们的下载,找到它。“API”库只包含接口定义,而不是实际的日志实现。我在Netbeans IDE中,下载jar文件并设置类路径后,它仍然无法工作