提升问题:遇到Jetty上的Log4J错误:运行

时间:2010-11-23 00:55:19

标签: scala maven lift

这个问题似乎很常见,但到目前为止我还没有找到一个有用的解决方案。

我使用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到目前为止已经发生了一系列无证错误,超出了学习乐趣变成个人挑战的程度。

1 个答案:

答案 0 :(得分:2)

解决。我把解决方案放在这里,以便其他人找到它:

在wiki中没有任何地方说Log.infoF已被弃用并且会导致此错误。解决方案非常简单,只需将其替换为Schemifier.infoF _,该行必须如下所示:

Schemifier.schemify(true, Schemifier.infoF _, User)

这样可以。