每次我尝试从命令行运行一个使用SLFj4记录器(LoggerFactory.getLogger(myClass.class))的程序时,我得到一个NoSuchMethodError
。
Exception in thread "main" java.lang.NoSuchMethodError:
org.slf4j.LoggerFactory.getLogger(Ljava/lang/Class;)Lorg/slf4j/Logger;
有趣的是,当我在Eclipse中运行相同的程序时,我没有收到此错误。编译代码时没有错误。方法getLogger
明确存在于类路径中的相应类文件中。
我尝试了最新版本的SLF4j API和绑定,但错误仍然存在。我已将所有相关类添加到类路径中(并且没有ClassNotFoundExceptions)。
我可以尝试做什么?您需要哪些进一步的信息?
提前致谢!
答案 0 :(得分:1)
您必须使用包含SLF4j的两个依赖项,尝试从依赖项之一中排除,然后再试一次。
还要确保使用相同的版本。