【问题标题】:Using slf4j with c3p0 and Hibernate将 slf4j 与 c3p0 和 Hibernate 一起使用
【发布时间】:2014-10-08 11:36:08
【问题描述】:

我正在尝试让我的 c3p0 登录到 slf4j(log4j 后端)。

c3p0 documentation 说这个属性可以解决问题:

com.mchange.v2.log.MLog=com.mchange.v2.log.slf4j.Slf4jMLog 

但是,c3p0 在启动时会报错:

Tried without success to load the following MLog classes:
    com.mchange.v2.log.log4j.Log4jMLog

我已经使用 Gradle 包含了 Hibernate c3p0:

compile group: 'org.hibernate', name: 'hibernate-c3p0', version: '4.3.6.Final'

它包含一个 c3p0 0.9.2.1 jar,没有这个 MLog 类。所以我明确包括 c3p):

compile group: 'c3p0', name: 'c3p0', version: '0.9.1.2'

...确实有这个类,但是 c3p0 仍然拒绝加载它(同样的错误)——我猜是因为 c3p0 版本冲突,旧版本被忽略了。

不知道从这里去哪里;任何帮助将不胜感激。

【问题讨论】:

    标签: java hibernate log4j slf4j c3p0


    【解决方案1】:

    slf4j 支持是 c3p0 0.9.5 功能。

    请尝试升级到 c3p0 0.9.5-pre9。

    【讨论】:

    • 嗨,史蒂夫,这是否托管在我可以将 Gradle 指向的某个仓库中?
    • 是的。 [groupId:com.mchange,artifactId:c3p0,版本:0.9.5-pre9]
    • 0.9.5.2 之前的 slf4j 支持存在性能问题(不必要的字符串分配)。如果您将 c3p0 登录到 slf4j,请尝试升级到 [groupId: com.mchange, artifactId: c3p0, version: 0.9.5.2]。对不起!
    • 关于如何为 c3p0 设置日志记录的详细信息:mchange.com/projects/c3p0/#configuring_logging
    猜你喜欢
    • 2013-12-25
    • 1970-01-01
    • 1970-01-01
    • 2014-09-25
    • 1970-01-01
    • 2015-11-28
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多