0

我正在研究使用Gradle而不是Ant/Ivy。我試圖創建我的項目間的依賴於所有配置,使得例如,project1.compile取決於project2.compileproject1.runtime取決於project2.runtimeGradle依賴於所有配置的項目

在常春藤,我這樣做有以下XML:

PROJECT1 /的ivy.xml

<dependency conf="*->@" org="myorg" name="project2" rev="latest.integration" /> 

在搖籃,這裏是我曾嘗試:

PROJECT1 /的build.gradle

configurations.each { config -> 
    config.dependencies.add project(path: ':project2', configuration: config.name) 
} 

但抱怨說,project功能不存在:

> Could not find method project() for arguments [{path=:project2, configuration=archives}] on project ':project1'. 

任何想法如何做到這一點?

回答

2
configurations.all { config -> 
    project.dependencies.add(config.name, 
     project.dependencies.project(
      path: ':project2', configuration: config.name)) 
} 
+0

謝謝你,工作很好。爲了讓這段代碼在所有子項目中都可用,我在根項目中添加了一個如下所示的函數:'addProjectDependency(project,':project2')'。我的希望是定義類似於「全部」配置的東西,它可以做同樣的事情。有關我的方法的任何提示或反饋,或更好的方法來使這個可重用?再次感謝。 –

相關問題