Neulich [hier](http://stackoverflow.com/questions/9577929/cleanest-way-in-gradle-to-get-the-path-to-a-jar-file-in-the-gradle-dependency- Ich habe ca) beobachtet. Ich brauchte eine Liste von JARs, um alle abhängigen JARs zu sammeln und sie automatisch zu einer JAR zu kombinieren. Dachte ich, nachdem ich mir den Code hier angesehen hatte.
prologue.groovy
project.configurations.compile*.each{...}
Wenn ja, frage ich mich, ob es möglich ist, den Pfad von JAR durch iterative Verarbeitung zu erhalten.
Kopieren wir nun den folgenden Code und führen ihn in build.gradle
des Moduls aus.
prologue2.groovy
project.configurations.compile*.each{
println it
}
Denken Sie, Sie können die Liste der Pfade sehen?
Nein
Der Inhalt der JAR-Datei (als ob alle JARs "cat" wären) wird in die Standardausgabe ausgegeben.
Die Konsole (Terminal
) war sehr rau und es war schwer.
Also was soll ich tun?
correct.groovy
project.configurations.compile*.toURI().each {
File file=new File(it)
println file//Ersetzen Sie es durch einen Prozess, der ein Dateiobjekt verwendet.
}
Es ist so. Machen Sie es "URI" und dann zurück zu "Datei". Dadurch wird sichergestellt, dass "Datei" iterativ verarbeitet werden kann. Warum haben Sie den Inhalt der JAR-Datei in die Standardausgabe ausgegeben? Dies ist nur eine Vermutung,
Datei
(File.readLines ()
) und machen Sie daraus eine ArrayList
. Recommended Posts