Java 无法加载com.microsoft.sqlserver.jdbc.SQLServerDriver类?
我在尝试连接SQL Server 2008数据库时遇到问题,以下是完全例外:Java 无法加载com.microsoft.sqlserver.jdbc.SQLServerDriver类?,java,sql-server-2008,jdbc,Java,Sql Server 2008,Jdbc,我在尝试连接SQL Server 2008数据库时遇到问题,以下是完全例外: java.lang.UnsupportedClassVersionError: Bad version number in .class file (unable to load class com.microsoft.sqlserver.jdbc.SQLServerDriver) org.apache.catalina.loader.WebappClassLoader.findClassInternal(We
java.lang.UnsupportedClassVersionError: Bad version number in .class file (unable to load class com.microsoft.sqlserver.jdbc.SQLServerDriver)
org.apache.catalina.loader.WebappClassLoader.findClassInternal(WebappClassLoader.java:2531)
org.apache.catalina.loader.WebappClassLoader.findClass(WebappClassLoader.java:1010)
org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1483)
org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1361)
java.lang.ClassLoader.loadClassInternal(Unknown Source)
java.lang.Class.forName0(Native Method)
java.lang.Class.forName(Unknown Source)
ma.ancfcc.dao.ConnexionSigest.getConnection(ConnexionSigest.java:120)
ma.ancfcc.action.VerifyLoginAction.execute(VerifyLoginAction.java:70)
org.apache.struts.chain.commands.servlet.ExecuteAction.execute(ExecuteAction.java:58)
org.apache.struts.chain.commands.AbstractExecuteAction.execute(AbstractExecuteAction.java:67)
org.apache.struts.chain.commands.ActionCommandBase.execute(ActionCommandBase.java:51)
org.apache.commons.chain.impl.ChainBase.execute(ChainBase.java:191)
org.apache.commons.chain.generic.LookupCommand.execute(LookupCommand.java:305)
org.apache.commons.chain.impl.ChainBase.execute(ChainBase.java:191)
org.apache.struts.chain.ComposableRequestProcessor.process(ComposableRequestProcessor.java:283)
org.apache.struts.action.ActionServlet.process(ActionServlet.java:1913)
org.apache.struts.action.ActionServlet.doPost(ActionServlet.java:462)
javax.servlet.http.HttpServlet.service(HttpServlet.java:637)
javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
异常指向这一行代码:
private static String DRIVER_SQLSERVER="com.microsoft.sqlserver.jdbc.SQLServerDriver";
如何解决此问题?当您尝试加载使用比您运行应用程序所使用的Java版本更高版本编译的类时,会引发此异常 看
java-version
javap-verbose com.microsoft.sqlserver.jdbc.SQLServerDriver
- 使用更高版本的JVM运行应用程序
- 下载旧版本的驱动程序
当您尝试加载一个使用比您运行应用程序所使用的Java版本更高版本编译的类时,会引发此异常 看
java-version
javap-verbose com.microsoft.sqlserver.jdbc.SQLServerDriver
- 使用更高版本的JVM运行应用程序
- 下载旧版本的驱动程序
当您尝试加载一个使用比您运行应用程序所使用的Java版本更高版本编译的类时,会引发此异常 看
java-version
javap-verbose com.microsoft.sqlserver.jdbc.SQLServerDriver
- 使用更高版本的JVM运行应用程序
- 下载旧版本的驱动程序
当您尝试加载一个使用比您运行应用程序所使用的Java版本更高版本编译的类时,会引发此异常 看
java-version
javap-verbose com.microsoft.sqlserver.jdbc.SQLServerDriver
- 使用更高版本的JVM运行应用程序
- 下载旧版本的驱动程序
谢谢@lukelazarovic,我正在运行jre6,我怎么知道我的SQL SERVER驱动程序与哪个版本的JVM兼容?。。。根据你回答的逻辑,如果我使用jre 1.7,我应该不会有任何问题,这对我来说是不正确的,我仍然会遇到jre 1.7的相同异常。我已经更新了我的答案-尝试找出类文件的版本,并用这些信息更新你的问题。谢谢@lukelazarovic,我正在运行jre6,我如何知道我的SQL SERVER驱动程序与哪个版本的JVM兼容?。。。根据你回答的逻辑,如果我使用jre 1.7,我应该不会有任何问题,这对我来说是不正确的,我仍然会遇到jre 1.7的相同异常。我已经更新了我的答案-尝试找出类文件的版本,并用这些信息更新你的问题。谢谢@lukelazarovic,我正在运行jre6,我如何知道我的SQL SERVER驱动程序与哪个版本的JVM兼容?。。。根据你回答的逻辑,如果我使用jre 1.7,我应该不会有任何问题,这对我来说是不正确的,我仍然会遇到jre 1.7的相同异常。我已经更新了我的答案-尝试找出类文件的版本,并用这些信息更新你的问题。谢谢@lukelazarovic,我正在运行jre6,我如何知道我的SQL SERVER驱动程序与哪个版本的JVM兼容?。。。按照你回答的逻辑,如果我使用jre 1.7,我应该不会有任何问题,这对我来说是不正确的,我仍然会得到与jre 1.7相同的异常。我已经更新了我的答案-尝试找出类文件的版本,并用这些信息更新你的问题。异常不能指向你声称的代码行。@Kayaman为什么?我自己验证了这一点:)因为该行是一个字符串变量声明,无法生成堆栈跟踪。卢卡拉扎罗维奇的回答是正确的。如果您声称它不能与Java1.7一起工作,那么您又错了。您提供的信息不好,所以很难帮助您。Kayman是对的,字符串声明行上的异常是胡说八道。当我查看stacktrace时,很明显这是代码中发生异常的那一行:ma.ancfc.dao.ConnexionSigest.getConnection(ConnexionSigest.java:120)对不起,我错了@lukelazarovic,发生异常的代码行是Class.forName(DRIVER\u SQLSERVER);异常无法指向您声明的代码行。@Kayaman为什么?我自己验证了这一点:)因为该行是一个字符串变量声明,无法生成堆栈跟踪。卢卡拉扎罗维奇的回答是正确的。如果您声称它不能与Java1.7一起工作,那么您又错了。您提供的信息不好,所以很难帮助您。Kayman是对的,字符串声明行上的异常是胡说八道。当我查看stacktrace时,很明显这是代码中发生异常的那一行:ma.ancfc.dao.ConnexionSigest.getConnection(ConnexionSigest.java:120)对不起,我错了@lukelazarovic,发生异常的代码行是Class.forName(DRIVER\u SQLSERVER);异常无法指向您声明的代码行。@Kayaman为什么?我自己验证了这一点:)因为该行是一个字符串变量声明,无法生成堆栈跟踪。卢卡拉扎罗维奇的回答是正确的。如果您声称它不能与Java1.7一起工作,那么您又错了。你提供了不好的信息,所以很难帮助你。凯曼是对的