【问题标题】:ANT JDBC driver [com.mysql.jdbc.Driver] could not be loaded?无法加载 ANT JDBC 驱动程序 [com.mysql.jdbc.Driver]?
【发布时间】:2014-03-06 19:18:45
【问题描述】:

我决定开始学习数据库,主要关注 MySQL。我想我会关注this tutorial,寄希望于更好地理解这些东西是如何工作的,并且可以集成到我们的程序中。但是我遇到了一个不知道如何绕过的小问题。

有几点:

  • Ant 已安装并附加到我的路径环境变量中。
  • 我正在使用MySQL Community Edition 数据库。
  • MySQL Connector J 是我选择使用的连接器。它已被附加到我的路径环境变量以及 MYSQLDRIVER 在我的 mysql-build-properties.xml 文件中的表示属性。

当我在 JDBCTutorial Directory 中运行命令 ant create-mysql-database 时,它给了我一个错误提示:

     C:\[LOCATION]\JDBCTutorial ant create-mysql-database
     BUILD FAILED
     C:\[LOCATION]\JDBCTutorial\build.xml:73: Class
      **Not Found: JDBC driver com.mysql.jdbc.Driver could not be loaded**

查看line:73 上的build.xml 文件,我有以下信息:

70 <target name="create-mysql-database">
71    <sql driver="${DB.DRIVER}" url="${DB.URL.NEWDATABASE}" userid="${DB.USER}"
72         password="${DB.PASSWORD}" classpathref="CLASSPATH"
73         delimiter="${DB.DELIMITER}" autocommit="false" onerror="continue">
74      create database ${DB.SID};
75    </sql>
76 </target>  

build.xml 文件使用包含以下内容的mysql-build-properties.xml 文件:

<project name="MySQL Properties" default="all" basedir=".">

  <property name="JAVAC"          value="C:\\Program Files (x86)\\Java\\jdk1.7.0_21\\bin\\javac"/>
  <property name="JAVA"           value="C:\\Program Files (x86)\\Java\\jdk1.7.0_21\\bin\\java" />
  <property name="PROPERTIESFILE" value="properties/mysql-sample-properties.xml"/>
  <property name="MYSQLDRIVER"    value="C:\\Program Files (x86)\\MySQL\\MySQL Connector J\\mysql-connector-java-5.1.29-bin.jar"/>

  <path id="CLASSPATH">
    <pathelement location = "classes"/>
    <pathelement location = "${MYSQLDRIVER}"/>
    <pathelement location = "lib/JDBCTutorial.jar"/>
  </path>

  <property name="DB.VENDOR"          value="mysql"/>
  <property name="DB.DRIVER"          value="com.mysql.jdbc.Driver"/>
  <property name="DB.HOST"            value="localhost"/>
  <property name="DB.PORT"            value="3306"/>
  <property name="DB.SID"             value="testdb"/>
  <property name="DB.URL.NEWDATABASE" value="jdbc:mysql://${DB.HOST}:${DB.PORT}/?allowMultiQueries=true"/>
  <property name="DB.URL"             value="jdbc:mysql://${DB.HOST}:${DB.PORT}/${DB.SID}?allowMultiQueries=true"/>
  <property name="DB.USER"            value="root"/>
  <property name="DB.PASSWORD"        value="root"/>
  <property name="DB.DELIMITER"       value=";"/>

</project>

如果有人知道我可能设置错了什么,请告诉我。

【问题讨论】:

    标签: java mysql xml jdbc ant


    【解决方案1】:

    您的属性MYSQLDRIVER 应该指向一个JAR 文件。不应该是mysql-connector-java-5.1.29-bin.jar而不是mysql-connector-java-5.1.29-bin吗?

    也许你可以尝试把这个 JAR 放到一个路径中不包含空格的位置。

    【讨论】:

    • 也许 mysql 没有运行?
    【解决方案2】:

    我的问题是由 MYSQLDRIVER 的值中的单个“\”引起的(类似C:\\Program Files (x86)\\MySQL\\Connector.J 5.1\\mysql-connector-java-5.1.35-bin.jar 的路径),可能是由于特殊字符的一些读取问题引起的

    【讨论】:

      猜你喜欢
      • 2016-08-18
      • 2012-04-23
      • 2012-08-24
      • 2016-02-15
      • 1970-01-01
      • 2016-07-07
      • 1970-01-01
      • 1970-01-01
      • 2020-09-12
      相关资源
      最近更新 更多