2016-07-12 6 views
7

So ist der Fall durch Rücksendung ist dies in der build.gradle Datei in der Struktur Abhängigkeit IGibt es eine Möglichkeit, ob eine bestimmte Abhängigkeit in der gradle Datei zu kennen kompiliert wird eine boolean

dependencies { 
    compile 'A' 
    compile 'B' 
} 

aber ich habe wollen, dass Leute in der Lage sind, entweder nur A oder nur B zu kompilieren, gibt es eine Möglichkeit zu wissen, ob zum Beispiel die Abhängigkeit A verwendet wurde, indem man einen globalen Booleschen Wert zurückgibt, der woanders verwendet werden kann?

so mit anderen Worten

if (A was compiled) { 
     compile A; 
} else { 
     exclude A; 
} 
+1

Warum würden Sie optionale Abhängigkeiten wünschen? –

+0

weil ich eine Aufgabe habe, die wissen muss, ob die bestimmte Abhängigkeit enthalten war oder nicht, die Aufgabe ist im Grunde ein Glas bauen –

+1

Immer noch nicht bekommen ... Ist das ein Fettglas zu bauen? Sie möchten also einige Abhängigkeiten manchmal aus dem Jar ausschließen? –

Antwort

1

Sie könnten alle wie diese kompilieren Abhängigkeiten erhalten:

def compile = configurations.compile.allDependencies*.with{"$it.group:$it.name:$it.version".toString()} 

Es würde zurückkehren Liste aller Abhängigkeiten in group:name:version Format. Dann könnten Sie einfach verwenden:

if("org.codehaus.groovy:groovy-all:2.4.7" in compile) { 
    println "org.codehaus.groovy:groovy-all:2.4.7 was compiled" 
} 
+0

interessant, danke –