在gradle中,有没有办法引用外部罐子。我有一些外部罐子,坐在项目结构外的另一个文件夹中。有没有办法在build.gradle文件中添加对这些jar的引用,以便在编译过程中获取它们?
由于
编辑:
我使用allprojects任务修改了mu build.gradle,该任务具有以下“子任务(?)”,如下所示:
repositories{
flatDir name:'ExternalJars',dirs:'<path to the jars>'
dependencies{
compile: 'jarname:jarname:version'
}
}
这似乎使我的构建运行得很好。当我创建存储库并指定依赖项时,是否有人可以了解到底发生了什么? - 谢谢
答案 0 :(得分:5)
您可以在FlatDirectoryArtifactRepository的javadoc中找到有关flatDir行为的详细说明。
基本思想是它在flatDir
中指定的与[artifact]-[version].[ext]
模式匹配的根目录中查找jar文件。
注意:工件组被忽略(因此您可以将它们指定为:jarname:version
),并且假设所有工件都没有传递依赖性。
顺便说一下,引用本地jar的另一种方法是创建一个本地常春藤存储库(参见p.7.7 Usage of a local Ivy directory)。如果要声明传递依赖项,则需要使用它。