Java 已安装MySQL驱动程序,但getConnection未找到合适的驱动程序

Java 已安装MySQL驱动程序,但getConnection未找到合适的驱动程序,java,jdbc,jboss,wildfly,mysql-connector,Java,Jdbc,Jboss,Wildfly,Mysql Connector,我有一个新安装的Wildfly 10应用服务器,以独立模式运行。我需要部署一个需要MySQL JDBC驱动程序的项目。 我按照上的教程安装了驱动程序(我选择了模块安装)。重新启动WildFly后,在控制台.log中,我读到: INFO[org.jboss.as.connector.subsystem.datasources](服务器服务 线程池--33)WFLYJCA0005:部署不符合JDBC的驱动程序 类com.mysql.jdbc.Driver(版本5.1) INFO[org.jboss.

我有一个新安装的Wildfly 10应用服务器,以独立模式运行。我需要部署一个需要MySQL JDBC驱动程序的项目。 我按照上的教程安装了驱动程序(我选择了模块安装)。重新启动WildFly后,在控制台.log中,我读到:

INFO[org.jboss.as.connector.subsystem.datasources](服务器服务 线程池--33)WFLYJCA0005:部署不符合JDBC的驱动程序 类com.mysql.jdbc.Driver(版本5.1) INFO[org.jboss.as.connector.deployers.jdbc](MSC服务线程1-6) WFLYJCA0018:已启动驱动程序名为mysql的驱动程序服务

看起来一切正常,但我无法连接数据库。 我正在使用这段代码:

Class.forName("com.mysql.jdbc.Driver");
Connection conn=DriverManager.getConnection("jdbc:mysql://localhost:3306/dbName?user=someUser&password=somePass");
第一行抛出异常:

[Module]中的com.mysql.jdbc.Driver “部署.someProject-1.0.0.war:main 来自服务模块加载程序]”

如果我注释掉第一行,就不会得到合适的驱动程序异常

你知道吗?谢谢你的建议,我有个主意

据我所知,在WildFly中,默认情况下应用程序不会看到模块。 我想您需要让您的应用程序了解MySql模块

如果您有WAR,则需要在WEB-INF文件夹中创建文件jboss-deployment-structure.xml,内容如下:

<?xml version="1.0" encoding="UTF-8"?>
<jboss-deployment-structure>
  <deployment>
    <dependencies>
      <module name="mysql" />      
    </dependencies>    
  </deployment>
</jboss-deployment-structure>

我有个主意

据我所知,在WildFly中,默认情况下应用程序不会看到模块。 我想您需要让您的应用程序了解MySql模块

如果您有WAR,则需要在WEB-INF文件夹中创建文件jboss-deployment-structure.xml,内容如下:

<?xml version="1.0" encoding="UTF-8"?>
<jboss-deployment-structure>
  <deployment>
    <dependencies>
      <module name="mysql" />      
    </dependencies>    
  </deployment>
</jboss-deployment-structure>

您需要为刚刚创建的MySQL模块添加WAR依赖项

有两种方法,在WAR中使用MANIFEST.MF文件和一行依赖项:com.mysql

或者使用jboss依赖项XML文件,如:

<jboss-deployment-structure>

   <deployment>

      <dependencies>
         <module name="com.mysql" />
      </dependencies>

   </deployment>
</jboss-deployment-structure>


两者都应该放在WAR文件的META-INF目录中。应该有Maven插件可以为您创建这两个插件。

您需要在刚刚创建的MySQL模块上为WAR添加一个依赖项

有两种方法,在WAR中使用MANIFEST.MF文件和一行依赖项:com.mysql

或者使用jboss依赖项XML文件,如:

<jboss-deployment-structure>

   <deployment>

      <dependencies>
         <module name="com.mysql" />
      </dependencies>

   </deployment>
</jboss-deployment-structure>


两者都应该放在WAR文件的META-INF目录中。应该有Maven插件可以为您创建这两个插件。

您使用Maven吗?是的,我使用Maven。ozOlip的回答解决了问题你在用maven吗?是的,我用maven。奥佐利普的回答解决了这个问题