Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/maven/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java Ant/Jooq生成器-与maven一起导入的Jooq库的路径_Java_Maven_Ant_Jooq - Fatal编程技术网

Java Ant/Jooq生成器-与maven一起导入的Jooq库的路径

Java Ant/Jooq生成器-与maven一起导入的Jooq库的路径,java,maven,ant,jooq,Java,Maven,Ant,Jooq,我有一个多模块的maven项目,我正在实现一个ant任务,直接从jpa实体生成jooq类 以下是我所指的教程: 给我带来错误的ant任务是这个(我相信是因为没有设置类路径): 给出的错误是: 错误:无法找到或加载主类org.jooq.util.GenerationTool 在本教程中,类路径设置如下: <pathelement location="/path/to/jooq-3.5.4.jar"/> 但这些库似乎是手动导入的。如果库是用maven导入的,我应该放什么

我有一个多模块的
maven
项目,我正在实现一个
ant
任务,直接从
jpa
实体生成
jooq

以下是我所指的教程:

给我带来错误的ant任务是这个(我相信是因为没有设置类路径):


给出的错误是:

错误:无法找到或加载主类org.jooq.util.GenerationTool

在本教程中,类路径设置如下:

<pathelement location="/path/to/jooq-3.5.4.jar"/>

但这些库似乎是手动导入的。如果库是用
maven
导入的,我应该放什么?

使用Ant standalone 如果要在Maven之外触发代码生成,必须将所有这些jar文件放在ant类路径上:

  • JDBC驱动程序
  • jooq-{version}.jar
  • jooq meta-{version}.jar
  • jooq codegen-{version}.jar
另见:

使用Maven中的Ant 您链接的手册部分显示了如何使用maven antrun插件:



愚蠢的问题当你有Maven的时候为什么要使用Ant?@SimonMartinelli我使用Ant创建可定制的构建步骤,Maven只是下载库,这不就是在我构建时生成
jooq
源代码吗?我的问题的目标是有一个ant
目标,我可以随时单独单击。请注意,我对maven构建的了解非常有限,尽管您可以使用可以使用
-P profile name
显式调用的maven概要文件。如果将代码生成输出指定在
/src/main/java
目录中(而不是
/target
),那么这将完全独立于Maven构建生命周期。总的来说,从ant升级到Maven是非常值得的。不过,我会在答案中添加一些只针对ant的配置的附加部分。对于未来的读者,我已经切换到maven,人们只能从中受益
<pathelement location="/path/to/jooq-3.5.4.jar"/>
classpathref="maven.compile.classpath"