我试图了解大多数人在源树中Ivy-lib目录的位置。我倾向于直接在项目根目录中生成它,但这需要我将它添加到每个项目的svn:ignore属性中。我可以将它弹出到"out"目录中(通常在svn:ignore中),但这似乎也不对,因为它不是由构建生成的(我的OCD涵盖了定义和语义)。有什么建议吗?
我假设您正在使用ivy检索任务?
默认情况下,它将文件放在一个名为"lib"的本地目录中。但是,您可以使用模式属性完全自定义位置:
<ivy:retrieve pattern="/home/johndoe/lib/[artifact].[ext]"/>
备选方案
如果您担心在构建工作区中创建临时文件,我建议您使用cachepath来管理一个或多个ANT路径。
<ivy:resolve/>
<ivy:cachepath pathid="compile.path" conf="compile"/>
<ivy:cachepath pathid="runtime.path" conf="runtime"/>
<ivy:cachepath pathid="test.path" conf="test"/>
<ivy:report/>
解析任务将分析并下载依赖项,报告任务将生成HTML报告。各种ANT路径是由位于ivy缓存中的工件填充的。每组jar都是使用ivy配置指定的。
以下是一些工作示例:
- 如何避免使用Ivy复制依赖关系
- Ivy似乎只获取javadoc jar