Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/neo4j/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 无法加载com.microsoft.sqlserver.jdbc.SQLServerDriver类?_Java_Sql Server 2008_Jdbc - Fatal编程技术网

Java 无法加载com.microsoft.sqlserver.jdbc.SQLServerDriver类?

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

我在尝试连接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(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
  • 按照-using
    javap-verbose com.microsoft.sqlserver.jdbc.SQLServerDriver
  • 如果jar打算与更高版本的Java一起使用,您可以:
    • 使用更高版本的JVM运行应用程序
    • 下载旧版本的驱动程序

  • 当您尝试加载一个使用比您运行应用程序所使用的Java版本更高版本编译的类时,会引发此异常

  • 使用
    java-version
  • 按照-using
    javap-verbose com.microsoft.sqlserver.jdbc.SQLServerDriver
  • 如果jar打算与更高版本的Java一起使用,您可以:
    • 使用更高版本的JVM运行应用程序
    • 下载旧版本的驱动程序

  • 当您尝试加载一个使用比您运行应用程序所使用的Java版本更高版本编译的类时,会引发此异常

  • 使用
    java-version
  • 按照-using
    javap-verbose com.microsoft.sqlserver.jdbc.SQLServerDriver
  • 如果jar打算与更高版本的Java一起使用,您可以:
    • 使用更高版本的JVM运行应用程序
    • 下载旧版本的驱动程序

  • 当您尝试加载一个使用比您运行应用程序所使用的Java版本更高版本编译的类时,会引发此异常

  • 使用
    java-version
  • 按照-using
    javap-verbose com.microsoft.sqlserver.jdbc.SQLServerDriver
  • 如果jar打算与更高版本的Java一起使用,您可以:
    • 使用更高版本的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一起工作,那么您又错了。你提供了不好的信息,所以很难帮助你。凯曼是对的