ant初始化数据库的问题

如果数据库是utf-8编码,用下面的初始化数据库任务会出错:

<target name="initdb" >

<sql driver="com.mysql.jdbc.Driver"

url="jdbc:mysql://localhost:3306/learndiarydb"

userid="dbuser"

password="1234"

classpath="lib/mysql-connector-java-3.1.12-bin.jar"

autocommit="true"

rdbms="mysql"

print="true"

src="database/testdata_mysql.sql" />

</target>

错误报告为:

Buildfile: build.xml

initdb:

      [sql] Executing file: F:\learndiary\learndiary\old\database\testdata_mysql.sql

      [sql] 0 rows affected

      [sql] Failed to execute:    INSERT INTO article VALUES (1,1,0,'鍏憡鐗?,'鍏憡鐗?,'2004-09-28 08:38:54','',1,'2005-11-10 08:27:50',6,1,'admin',1)

BUILD FAILED

F:\learndiary\learndiary\old\build.xml:124: java.sql.SQLException: Syntax error or access violation,  message from server: "You have an error in your SQL syntax.  Check the manual that corresponds to your MySQL server version for the right syntax to use near '閸忣剙鎲¢悧锟?,'2004-09-28 08:38:54','',1,'2005-11-10 08:27:50"

Total time: 12 seconds

而这个初始化通过mysql的source learndiarydb yourpath\testdata_mysql.sql的命令来进行则不会出错。

不知是什么原因?

在ant中使用junit测试

  今天,ppig提交的junit,strutstestcase测试类的同时,修改了ant的build.xml,里面包含自动测试的脚本,可是最后一个运行测试的任务总是通不过,报告:

Buildfile: D:\learndiary\find_a_way\login\build.xml

compile:

compiletests:

runtests:

       [junit] BUILD FAILED: file:D:/learndiary/find_a_way/login/build.xml:111: Could not create task or type of type: junit.

Ant could not find the task or a class this task relies upon.

This is common and has a number of causes; the usual

solutions are to read the manual pages then download and

install needed JAR files, or fix the build file:

 - You have misspelt 'junit'.

   Fix: check your spelling.

 - The task needs an external JAR file to execute

   and this is not found at the right place in the classpath.

   Fix: check the documentation for dependencies.

   Fix: declare the task.

 - The task is an Ant optional task and optional.jar is absent

   Fix: look for optional.jar in ANT_HOME/lib, download if needed

 - The task was not built into optional.jar as dependent

   libraries were not found at build time.

   Fix: look in the JAR to verify, then rebuild with the needed

   libraries, or download a release version from apache.org

 - The build file was written for a later version of Ant

   Fix: upgrade to at least the latest release version of Ant

 - The task is not an Ant core or optional task

   and needs to be declared using <taskdef>.

Remember that for JAR files to be visible to Ant tasks implemented

in ANT_HOME/lib, the files must be in the same directory or on the

classpath

Please neither file bug reports on this problem, nor email the

Ant mailing lists, until all of these causes have been explored,

as this is not an Ant bug.

Total time: 1 second

解决办法:在环境变量的classpath中加上junit.jar的路径;或者在eclipse2.1环境中run ant->classpath->Runtime classpath中加上junit.jar的路径。