所以我用google,bing,duckduckgo和stackoverflow搜索了高低,我似乎无法找到问题的答案。
安装了jdk 8 64位窗口(Windows Server 2012和Windows 10)
安装了Oracle即时客户端12.2.0.1.0 64位窗口
安装了Oracle SQL开发人员18.2.0.183.1748 64位窗口
安装liquibase 3.6.2
修复了系统路径变量所以所有这些应用程序都在路径中在cmd窗口中,java返回帮助信息,liquibase返回:
Exception in thread "main" java.lang.NoClassDefFoundError: org/slf4j/LoggerFactory
at liquibase.logging.core.Slf4JLoggerFactory.getLog(Slf4JLoggerFactory.java:9)
at liquibase.logging.LogService.getLog(LogService.java:39)
at liquibase.integration.commandline.Main.<clinit>(Main.java:67)
Caused by: java.lang.ClassNotFoundException: org.slf4j.LoggerFactory
at java.net.URLClassLoader.findClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
... 3 more
我究竟做错了什么?我在Windows 10和Windows Server 2012上都出现此错误。提前感谢!
似乎liquibase 3.6.2 zip文件(我从liquibase-3.6.2-bin.zip
下载了https://download.liquibase.org/download/?frm=n)不包含slf4j-api jar文件,这是定义相关类的地方。
您应该从slf4j-1.7.25.zip
下载https://www.slf4j.org/download.html,解压缩该zip文件,然后将slf4j-api-1.7.25.jar
复制到liquibase \ lib目录中。