无法实例化驱动程序 class "com.mysql.cj.jdbc.Driver":在 jboss 中部署 war 文件时
Unable to instantiate driver class "com.mysql.cj.jdbc.Driver": when deploying war file in jboss
我创建了一个 Web 应用程序,数据库连接 是使用简单的 jdbc 连接 机制处理的。构建 WAR 文件后,我验证了 WEB-INF/lib 是否具有 mysql 连接器 库在那里,我正在使用 mysql 1.8 java 连接器。但是当我尝试在 jboss 中部署应用程序时,我收到了一些错误和警告。项目是从 java 1.7 构建的,jboss 服务器使用相同的 jdk 版本运行。
Unable to instantiate driver class "com.mysql.cj.jdbc.Driver":
java.lang.ClassNotFoundException: com.mysql.cj.jdbc.Driver from [Module
"deployment.NEWAPPLICATION.war:main" from Service Module Loader]
我不知道为什么我会收到此错误 cz mysql 连接器可以在 class 路径上找到,我在同一堆栈跟踪中遇到的另一个问题是这个
Failed to define class com.mysql.cj.jdbc.Driver in Module
"deployment.NEWAPPLICATION.war:main" from Service Module Loader:
java.lang.UnsupportedClassVersionError: com/mysql/cj/jdbc/Driver :
Unsupported major.minor version 52.0
并且有很多日志说无法从 com/mysql/cj
索引 classes
Could not index class com/mysql/cj/MysqlxSession.class at
/content/NEWAPPLICATION.war/WEB-INF/lib/mysql-connector-java-8.0.16.jar:
java.lang.IllegalStateException: Unknown tag! pos=32 poolCount = 334
我并没有真正使用 WAR 应用程序,也没有真正使用 Jboss 服务器。我无法自己解决这个问题,我们将不胜感激。
您说您使用的是 Java 1.7,但看起来 MySQL 驱动程序是使用 Java 1.8 编译的。要么升级你的 JRE,要么找到与 Java 1.7 兼容的驱动程序。您需要 Connector/J 5.1,而不是 8。您可以在 The MySQL Archive
找到它
编辑:如果您使用的是 Maven,则可以使用此人工制品:
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>5.1.47</version>
</dependency>
我创建了一个 Web 应用程序,数据库连接 是使用简单的 jdbc 连接 机制处理的。构建 WAR 文件后,我验证了 WEB-INF/lib 是否具有 mysql 连接器 库在那里,我正在使用 mysql 1.8 java 连接器。但是当我尝试在 jboss 中部署应用程序时,我收到了一些错误和警告。项目是从 java 1.7 构建的,jboss 服务器使用相同的 jdk 版本运行。
Unable to instantiate driver class "com.mysql.cj.jdbc.Driver":
java.lang.ClassNotFoundException: com.mysql.cj.jdbc.Driver from [Module
"deployment.NEWAPPLICATION.war:main" from Service Module Loader]
我不知道为什么我会收到此错误 cz mysql 连接器可以在 class 路径上找到,我在同一堆栈跟踪中遇到的另一个问题是这个
Failed to define class com.mysql.cj.jdbc.Driver in Module
"deployment.NEWAPPLICATION.war:main" from Service Module Loader:
java.lang.UnsupportedClassVersionError: com/mysql/cj/jdbc/Driver :
Unsupported major.minor version 52.0
并且有很多日志说无法从 com/mysql/cj
索引 classesCould not index class com/mysql/cj/MysqlxSession.class at
/content/NEWAPPLICATION.war/WEB-INF/lib/mysql-connector-java-8.0.16.jar:
java.lang.IllegalStateException: Unknown tag! pos=32 poolCount = 334
我并没有真正使用 WAR 应用程序,也没有真正使用 Jboss 服务器。我无法自己解决这个问题,我们将不胜感激。
您说您使用的是 Java 1.7,但看起来 MySQL 驱动程序是使用 Java 1.8 编译的。要么升级你的 JRE,要么找到与 Java 1.7 兼容的驱动程序。您需要 Connector/J 5.1,而不是 8。您可以在 The MySQL Archive
找到它编辑:如果您使用的是 Maven,则可以使用此人工制品:
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>5.1.47</version>
</dependency>