Warum funktioniert das nicht und wie kann ich das gesuchte Ergebnis erhalten? Konkret möchte ich, dass Jacoco vor Sonarqube läuft.Wie bekomme ich Sonarqube von jacocoTestReport abhängen?
subprojects {
apply plugin: 'java'
apply plugin: 'idea'
apply plugin: 'eclipse'
apply plugin: 'jacoco'
test {
jacoco {
excludes = [...,
"javolution.*"]
}
}
jacocoTestReport {
dependsOn tasks.withType(Test)//This makes integrationTests go.
}
//This is the part that I can't get to work:
project.tasks["sonarqube"].dependsOn jacocoTestReport
}
Fehler sind:
* Where:
Build file '/dev/abc/build.gradle' line: 92
* What went wrong:
A problem occurred evaluating root project 'abc'.
> Task with name 'sonarqube' not found in project ':thingamajig'.
Natürlich thingamajig
ist ein leeres übergeordnetes Verzeichnis. No build.gradle
dort, aber es hat viele Unterverzeichnisse, die eine build.gradle
haben. Ich habe eine Reihe von Dingen ausprobiert, wie zum Beispiel das Überprüfen des Task-Graphen und das Einfangen der Ausnahme beim Aufruf. project.tasks.getByName()
Zeit zum Stochern, nehme ich an.
gleichen Fehler, ich habe Angst. Ich habe Teilprojekt hinzugefügt -> und verwendet subproject.tasks ["sonarqube"]. DependsOn jacocoTestReport – user447607
Ich habe println subProject.name hinzugefügt und es druckt so ziemlich, was ich erwarten würde. Der Name des Teilprojekts. – user447607
Erinnerung: dingamajig ist komplett leer. Es ist nicht einmal eine build.gradle-Datei drin, aber es wird immer noch gefunden und ist fehlgeschlagen. – user447607