按照http://www.jooq.org/doc/2.4/manual/META/Configuration/#N10607中给出的关于如何运行 jooq 代码生成的示例,我遇到了构建失败并显示消息的问题:
codegen.xml:7: taskdef class org.jooq.util.GenerationTask cannot be found
作为参考,这里是 codegen.xml
<project name="..." default="generate-test-classes"
basedir=".">
<property name="path.to.jooq.distribution" value="${basedir}/libs"/>
<property name="path.to.mysql.driver" value="${basedir}/libs"/>
<property name="mysql.driver" value="mysqlcon"/>
<!-- Task definition -->
<taskdef name="generate-classes" classname="org.jooq.util.GenerationTask">
<classpath>
<fileset dir="${path.to.jooq.distribution}">
<include name="jooq.jar" />
<include name="jooqmeta.jar" />
<include name="jooqcodegen.jar" />
</fileset>
<fileset dir="${path.to.mysql.driver}">
<include name="${mysql.driver}.jar" />
</fileset>
</classpath>
</taskdef>
<!-- Run the code generation task -->
<target name="generate-test-classes">
<generate-classes jdbcurl="jdbc:mysql://localhost:3306/crawler"
jdbcuser="..." jdbcpassword="..." generatordatabaseinputschema="..."
generatortargetpackage="model.persistence.jooq"
generatortargetdirectory="${basedir}/src" />
</target>
</project>
我三次检查了类路径的定义,并且列出的每个文件都存在于给定位置下。那么会有什么问题呢?我错过了什么吗?我需要在某处配置 ant 来识别任务吗?
由于我已经检查过ant: failed to create task 或 type,我尝试将 taskdef 移动到目标内,但无济于事。