2013-09-07 21 views
14

supponga ho voluto usare Gradle con una struttura di progetto quali:Gradle - sottoprogetti ricorsive

RootProject 
\-- SubProjectA 
    \-- SubProjectAA 
    \-- SubProjectAB 

come vorrei che raggiungere questo obiettivo?

Quello che ho provato è piuttosto semplice. Ho creato tutte le directory, con una struttura sopra descritta:

RootProject 
\-- SubProjectA 
    \-- SubProjectAA 
     \-- build.gradle 
    \-- SubProjectAB 
     \-- build.gradle 
    \-- build.gradle 
    \-- settings.gradle 
\-- build.gradle 
\-- settings.gradle 

RootProject/settings.gradle:

include "SubProjectA" 

RootProject/SubProjectA/settings.gradle:

include "SubProjectAA", "SubProjectAB" 

ci sono due cose che ho provato Innanzitutto, ho provato a importare il progetto in Eclipse, che non ha rilevato SubProjectAASubProjectAB. Stordito, mi sono imbattuto gradle projects in RootProject e ottenuto questo output:

------------------------------------------------------------ 
Root project 
------------------------------------------------------------ 

Root project 'RootProject' 
\--- Project ':SubProjectA' 

Eppure, pensando ho fatto un errore, ho provato a fare funzionare lo stesso comando in SubProjectA, ed ho ottenuto:

------------------------------------------------------------ 
Root project 
------------------------------------------------------------ 

Root project 'RootProject' 
\--- Project ':SubProjectAA' 
\--- Project ':SubProjectAB' 

Suppongo che la risoluzione i sottoprogetti non vanno in modo ricorsivo. C'è qualche soluzione alternativa per questo?

Ogni esempio è mascherato con nomi di esempi, mi dispiace se ho fatto qualche errore.

Grazie!

risposta

15

È possibile avere solo uno settings.gradle. In genere si dovrebbe contenere qualcosa come:

include "SubProjectA:SubProjectAA" 
include "SubProjectA:SubProjectAB" 

Maggiori informazioni possono essere trovate nel "multi-progetto si basa" capitolo del Gradle User Guide.

+0

Freddo. Funziona anche in Eclipse! Tnx! –