当前位置: 首页 > 知识库问答 >
问题:

maven-java.lang.ClassNotFoundException:com.mysql.jdbc.driver

裴卓君
2023-03-14
<dependency>
    <groupId>mysql</groupId>
    <artifactId>mysql-connector-java</artifactId>
    <version>5.1.17</version>
    <type>jar</type>
    <scope>runtime</scope>
</dependency>
String dbClass = "com.mysql.jdbc.Driver";

Class.forName(dbClass);
Connection connection = DriverManager.getConnection(dbUrl,
    username, password);
Statement statement = connection.createStatement();
ResultSet resultSet = statement.executeQuery(query);
while (resultSet.next()) {
    String tableName = resultSet.getString(1);
    System.out.println("Table name : " + tableName);
}

MySQL jar在我的.m2 repo中,我尝试通过mvn命令行显式添加它,但说它已经存在。

共有1个答案

唐焕
2023-03-14

将作用域更改为compile:

<dependency>
    <groupId>mysql</groupId>
    <artifactId>mysql-connector-java</artifactId>
    <version>5.1.17</version>
    <type>jar</type>
    <scope>compile</scope>
</dependency>

因为它是默认的作用域,所以它对应于完全放弃作用域定义,所以类型的计数相同:

<dependency>
   <groupId>mysql</groupId>
   <artifactId>mysql-connector-java</artifactId>
   <version>5.1.17</version>
</dependency>

请查看以下内容:https://maven.apache.org/guides/introduction/introduction-to-dependency-mechanism.html以获得关于范围确定的详细信息。

 类似资料:
  • 问题内容: maven pom.xml 在代码中,我试图执行。 我得到这个: 但是我检查了我有mysql.jar,并且它有com.mysql.jdbc.Driver类。 问题答案: 通常,您不应在war文件中包括JDBC驱动程序。 我建议您将驱动程序标记为已提供,并将其添加到服务器的lib目录中。 PS。我不确定您为什么要使用 在您的代码中。为什么不让容器管理您的联系和交易?

  • Maven已经进入成熟期,没什么大的变化了。风头会慢慢被Gradle之类的盖过去,但目前仍然是首选,因为它足够满足大部分项目的需求,而且懂的人非常多。 1.Sonatype Maven被Sonatype主管后,中央仓库用Nexus管起来了。 用http://search.maven.org 就可以方便的找到jar。另外和Sun,Hibernate几家Repository的关系也好了,所有的jar都

  • 第一章 Maven介绍 Maven是Apache组织中的一个很成功的开源项目,主要服务于基于Java平台的项目构建,依赖管理和项目信息管理. 1.1 Maven历史 Maven的最初设计,以简化Jakarta Turbine项目的构建过程。有几个项目,每个项目包含了稍微不同的Ant构建文件。 JAR中纳入到CVS。 Jakarta Trubine项目有多个工程,每个工程都有自己的多个Ant构建文件

  • 首先将最新版本的web3j安装到项目中。 Maven Java 8: <dependency> <groupId>org.web3j</groupId> <artifactId>core</artifactId> <version>3.4.0</version> </dependency> Android: <dependency> <groupId>org.web3j</gro

  • 我使用Maven3.3.3和maven-jaxb2-plugin Version0.12.1从XSD模式生成java类。XSD所在的地址返回HTTP 302,插件抛出: 是否可以指定xjc编译器遵循302到正确的链接,或者不去尝试下载XSD?

  • 我有一个多模块maven项目,它似乎使用org.OWASP:dependency-check-maven插件在父模块和子模块/目标dirs上正确地生成了OWASP依赖关系报告,如下所示: 然而,参考插件文档,并执行sonar-maven-plugin,我只是无法找出正确的命令应该是什么,任何组合似乎都会导致构建失败: mvn声纳:声纳-dsonar.sources=?-dsonar.depende