aiyahai118
aiyahai118
采纳率0%
2014-09-17 17:36

莫名其妙的JAVA EXCEPTION

已采纳

DBPower.on(Map map){
....
....

        String implType = props.getProperty("type", "ralasafe");
        if (implType.equalsIgnoreCase("ralasafe")) {
            DataSourceProviderDbcpImpl impl = new DataSourceProviderDbcpImpl();

            String validInfo = impl.getValidInfo(props);

...
...
}
web.xml中配置了servlet,初始化init方法,会调用DBPower.on()方法。用来初始化数据库连接。
由于写单元测试测需要,想要直接调用DBPower.on()方法。结果每次走到DataSourceProviderDbcpImpl impl = new DataSourceProviderDbcpImpl();这行代码都会报错:
Exception in thread "main" java.lang.NoClassDefFoundError: org/apache/commons/pool/ObjectPool
at org.ralasafe.db.DBPower.on(DBPower.java:97)
at com.haier.hrois.BaseTestCase.main(BaseTestCase.java:87)
Caused by: java.lang.ClassNotFoundException: org.apache.commons.pool.ObjectPool
at java.net.URLClassLoader$1.run(Unknown Source)
at java.net.URLClassLoader$1.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)

... 2 more

public class DataSourceProviderDbcpImpl extends DataSource {......}

  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 复制链接分享
  • 邀请回答

2条回答

  • zuoshang zuoshang 7年前

    运行环境有没有commons-pool包

    点赞 评论 复制链接分享
  • zerosoft2009 zerosoft2009 7年前

    启动的时候设置classpath。让classpath中含有缺少的jar包

    点赞 评论 复制链接分享

相关推荐