为什么mule应用程序不会为log4j加载postgres驱动程序类?

时间:2013-06-26 19:10:50

标签: postgresql log4j mule mule-studio

我正在使用log4j配置mule应用程序以使用org.postgresql.Driver。下面是我的一些log4j.properties配置。

log4j.appender.postgres=org.apache.log4j.jdbc.JDBCAppender
log4j.appender.postgres.layout=org.apache.log4j.PatternLayout
log4j.appender.postgres.driver=org.postgresql.Driver
log4j.appender.postgres.URL=jdbc:postgresql://127.0.0.1:5432/edus-esb
log4j.appender.postgres.user=<username>
log4j.appender.postgres.password=<password>
log4j.appender.postgres.sql=INSERT INTO LOGS VALUES('%x','%d','%C','%p','%m')

根据日志,除驱动程序外,log4j配置的所有内容都会加载。

log4j:ERROR Failed to load driver
java.lang.ClassNotFoundException: org.postgresql.Driver

我正在使用maven使用下面的依赖项加载适当的驱动程序,但我也尝试通过Eclipse手动将驱动程序添加到类路径 - &gt;构建路径 - &gt;添加外部JARS。

<dependency>
    <groupId>postgresql</groupId>
    <artifactId>postgresql</artifactId>
    <version>9.1-901.jdbc4</version>
</dependency>

两种情况都没有运气。我之前在mule项目中加载类时遇到了一些麻烦,所以我想知道这是否与Mule的特定类加载策略/实现有关。

有什么想法吗?感谢。

1 个答案:

答案 0 :(得分:3)

在Mule独立实例中部署应用程序时是否收到此错误?
如果是这种情况,那么将包含该类的jar复制到独立实例中的lib / boot。