Java 在Ant中使用Maven实现jar依赖
我是Maven新手,但对Ant很熟悉,我喜欢Maven下载JAR及其依赖项的方式,因此我希望在我的Ant构建脚本中包含Maven依赖项。我已经看到了如何使用,但是这里所有的jar文件都下载到Java 在Ant中使用Maven实现jar依赖,java,maven,ant,jar,build,Java,Maven,Ant,Jar,Build,我是Maven新手,但对Ant很熟悉,我喜欢Maven下载JAR及其依赖项的方式,因此我希望在我的Ant构建脚本中包含Maven依赖项。我已经看到了如何使用,但是这里所有的jar文件都下载到.m2文件夹中,而我需要所有的jar文件下载到我项目的lib文件夹中。 这能不能做到,?如果可以的话,有谁能建议我怎么做。这是一个非常合法的问题 使用maven ant任务确实会使用通用的maven存储库位置,这仅仅是因为这将使所有maven项目受益,而不仅仅是本地项目 Maven默认为所有本地项目使用一个共
.m2文件夹中,而我需要所有的jar文件下载到我项目的lib文件夹中。
这能不能做到,?如果可以的话,有谁能建议我怎么做。这是一个非常合法的问题
使用maven ant任务确实会使用通用的maven存储库位置,这仅仅是因为这将使所有maven项目受益,而不仅仅是本地项目
Maven默认为所有本地项目使用一个共享缓存,只是因为为每个项目下载CommonsLang有点可笑
如果愿意,可以指定执行的localRepository位置(请参阅)
另外,正如另一位用户所说,它也很适合您的用例。如果您只需要下载依赖项,那么就可以下载。Maven可以这样做,但包含更多内容,这取决于您是否真的想探索这些选项。我找到了一种方法。
您必须在工件标记中提供filesetid,并使用“filesetid”复制到给定位置
<target name="maven-test">
<artifact:dependencies filesetid="build-dependency-jars">
<dependency groupId="gorup_id" artifactId="artifact_id" version="version" />
</artifact:dependencies>
<copy todir="./lib/">
<fileset refid="build-dependency-jars" />
<mapper type="flatten" />
</copy>
</target>
如果您对ANT更满意,我建议您使用ApacheIvy。这会下载项目库文件夹中的JAR吗?有人能告诉我为什么它会被否决吗。。这个问题是否有用或没有意义。是的,ivy中的“检索”任务在默认情况下将填充一个“lib”目录。就我个人而言,我使用更强大的cachepath任务结合配置来控制构建/测试和运行时类路径。我建议浏览网站上的各种问题,请参见: