Ich habe ein Gradle-Build-Skript ( build.gradle
), in dem ich einige Aufgaben erstellt habe. Diese Aufgaben bestehen hauptsächlich aus Methodenaufrufen. Die aufgerufenen Methoden befinden sich auch im Build-Skript.
Hier ist die Situation:
Ich erstelle eine ganze Reihe von Build-Skripten, die unterschiedliche Aufgaben enthalten, aber dieselben Methoden wie das ursprüngliche Skript verwenden. Daher möchte ich diese "allgemeinen Methoden" auf irgendeine Weise extrahieren, damit ich sie problemlos wiederverwenden kann, anstatt sie für jedes neue Skript zu kopieren, das ich erstelle.
Wenn Gradle PHP wäre, wäre Folgendes ideal:
//script content
...
require("common-methods.gradle");
...
//more script content
Aber das ist natürlich nicht möglich. Oder ist es?
Wie kann ich dieses Ergebnis erzielen? Was ist die bestmögliche Methode, um dies zu tun? Ich habe die Gradle-Dokumentation bereits gelesen, kann aber anscheinend nicht feststellen, welche Methode dafür am einfachsten und am besten geeignet ist.
Danke im Voraus!
AKTUALISIEREN:
Ich habe es geschafft, die Methoden in eine andere Datei zu extrahieren
(mit apply from: 'common-methods.gradle'
),
Die Struktur ist also wie folgt:
parent/
/build.gradle // The original build script
/common-methods.gradle // The extracted methods
/gradle.properties // Properties used by the build script
Nachdem build.gradle
ich eine Aufgabe von ausgeführt habe , bin ich auf ein neues Problem gestoßen: Anscheinend werden Methoden nicht erkannt, wenn sie sich in befinden common-methods.gradle
.
Irgendwelche Ideen, wie man das behebt?