使用gradle将jar添加到classpath

时间:2011-11-18 16:40:38

标签: compilation jar classpath gradle

在gradle中,有没有办法引用外部罐子。我有一些外部罐子,坐在项目结构外的另一个文件夹中。有没有办法在build.gradle文件中添加对这些jar的引用,以便在编译过程中获取它们?

由于

编辑:

我使用allprojects任务修改了mu build.gradle,该任务具有以下“子任务(?)”,如下所示:

repositories{
   flatDir name:'ExternalJars',dirs:'<path to the jars>'
   dependencies{
      compile: 'jarname:jarname:version'
   }
}

这似乎使我的构建运行得很好。当我创建存储库并指定依赖项时,是否有人可以了解到底发生了什么? - 谢谢

1 个答案:

答案 0 :(得分:5)

您可以在FlatDirectoryArtifactRepository的javadoc中找到有关flatDir行为的详细说明。

基本思想是它在flatDir中指定的与[artifact]-[version].[ext]模式匹配的根目录中查找jar文件。

注意:工件组被忽略(因此您可以将它们指定为:jarname:version),并且假设所有工件都没有传递依赖性。

顺便说一下,引用本地jar的另一种方法是创建一个本地常春藤存储库(参见p.7.7 Usage of a local Ivy directory)。如果要声明传递依赖项,则需要使用它。