felix-启动时报错ClassNotFound

来源:互联网 发布:查看应用程序端口号 编辑:程序博客网 时间:2024/05/16 19:48

【问题描述】
web应用中升级sqlserver数据库驱动包sqljdbc.jar,从官网下载下来的驱动包名称为mssqljdbc-2.0.6.jar。
直接引入到web工程中,启动web应用,总是报错。


【报错信息】
找不到驱动类:ClassNotFound.


【问题分析】
felix在部署web应用时,需要web应用打包成jar包,在jar包中有个文件/META-INF/MAINIFEST.MF。
该文件不光是用来提供jar包版本发布信息的,还可以提供一些扩展信息。
felix在加载web应用时,会根据该文件中的Bunld-Class属性(ps:该属性名可能记错了)去加载需要引入的jar包,
如果此处没有引入,即使jar包放在/WEB-INF/lib目录下,也不会引用。


【解决方案】
方案一:修改新驱动包的jar包名称为在MAINIFEST.MF文件中已引入的jar包名称sqljdbc.jar;
方案二:在MAINIFEST.MF文件中添加新驱动包名称mssqljdbc-2.0.6.jar