按照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 or type,我试图在目标中移动taskdef,但无济于事。
答案 0 :(得分:1)
ant任务是jOOQ 2.x中的一个示例实现。它已经很久以前被弃用并从jOOQ 3.0中删除了:
您链接的手册版本已经过时了。