2014-09-26 103 views
0

我有一个非java项目的依赖关系,我们基本上希望能够从Artifactory中包含两个版本的相同的依赖项模块到项目的工作区(在不同的文件夹)。我如何获得gradle加载所有依赖版本

所以我有一个项目与依赖关系树中的同一个模块的多个版本。例如:

Project A depends on: 
 
     module B version 3.0 depends on 
 
          module C version 2.0 
 
     module C version 1.0

,我想扩大到:

workspace 
    dependencies 
     B    <- contents of module B version 3.0 
     C_abc   <- contents of module C version 2.0 
     modC_xyz  <- contents of module C version 1.0 

现在我们要gradle这个摆脱artifactory的工件的模块C. 的两个版本1.0和2.0问题是,它试图解决'冲突'(即它想要获得版本1.0或版本2.0,并且我似乎无法让它保持两者)。 一旦我将它们全部在配置中可用,我可以扩展它们进入正确的文件夹,所以这不是真正的问题。

有没有人有解决方案?

回答

0

为复制模块创建单独的配置。然后,您可以将该配置复制到您选择的位置。

configurations { 
    moduleB 
} 

dependencies { 
    moduleB 'org.foo:dependency:3.0' 
} 

task copyDependencies(type: Copy) { 
    from(configurations.moduleB) { 
     into 'workspace/dependencies/B' 
    } 
} 
+0

谢谢马克,我会试试这个。 – riwerf 2014-09-29 13:14:31

相关问题