这个问题似乎很常见,但到目前为止我还没有找到一个有用的解决方案。
我使用net.liftweb
空白原型创建了一个项目,版本为2.2-M1,带有maven 2.我只为H2数据库添加了一个依赖项,然后还添加了一些模型和一个DBVendor,就像在基本原型中一样。但我只得到像java.lang.NoClassDefFoundError: org/apache/log4j/LogManager
这样的例外。
现在,记录器对于整个程序并不重要,当涉及到映射器的后续问题时,我认为我需要日志进行调试。我做了一个完整的mvn clean
并删除了我的.m2
文件夹,但问题仍然存在。
或者,每当错误没有出现时,我会得到另一个错误,因为记录器会使用NOP。我甚至认为我的pom.xml有问题,但我现在尝试使用log4j deps的几个变种,所有这些都没有改进。
我真的希望你能在这里帮助我,Lift到目前为止已经发生了一系列无证错误,超出了学习乐趣变成个人挑战的程度。
答案 0 :(得分:2)
解决。我把解决方案放在这里,以便其他人找到它:
在wiki中没有任何地方说Log.infoF
已被弃用并且会导致此错误。解决方案非常简单,只需将其替换为Schemifier.infoF _
,该行必须如下所示:
Schemifier.schemify(true, Schemifier.infoF _, User)
这样可以。