使用gradle将jar添加到classpath

sc_*_*ray 2 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'
   }
}
Run Code Online (Sandbox Code Playgroud)

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

rod*_*ion 5

你可以找到的Javadoc的flatDir行为相当详细的描述FlatDirectoryArtifactRepository.

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

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

顺便说一下,引用本地jar的另一种方法是创建一个本地常春藤存储库(参见第7.7页本地常春藤目录的用法).如果要声明传递依赖项,则需要使用它.