Ich habe eine Aufgabe, die im Wesentlichen die folgenden ausführt:parallelize Code in einer gradle Aufgabe
['subproj1', 'subproj2'].each { proj ->
GradleRunner.create()
.withProjectDir(file("./examples/${proj}/"))
.withArguments('check')
.build()
}
Die Prüfung ist ein Systemtest und erfordert zu 3rd-Party-Dienste verbinden, so möchte ich dies parallelisieren.
Kann dies in Großbuchstaben erfolgen? Wenn das so ist, wie?
Ich versuchte mit Java-Threading, aber die Builds scheiterten mit Fehlern, die ich nicht erinnern kann, was sie genau waren, aber sie deuteten an, dass der innere Grad des Graple beschädigt worden war.
ich diesen Parameter gesehen hatte, Aber leider scheint dies zu erfordern, dass Projekte als Multi-Projekt-Builds eingerichtet werden, die meiner nicht sind. Vielleicht muss ich umgestalten. –
Aber wenn sie kein Multiprojekt sind, können Sie sie komplett unabhängig voneinander ausführen. Wenn Sie gradle aufrufen, dann tun Sie dies, um ein Projekt zu erstellen (das möglicherweise aus verschiedenen Teilprojekten besteht). Ich habe sie nur als Multiprojekt-Build vorgeschlagen, weil Sie sie Teilprojekt [1,2,3] genannt haben. – TobiSH
Vielleicht könnten Sie mehr Einblicke darüber geben, wie Ihr Setup ist. Es ist nicht immer eine gute Idee, ein großes Projekt mit vielen Teilprojekten zu haben. Meine Faustregel wäre: Wenn ein bestimmter Teil der Software einen Lebenszyklus hat (Build, Release, Deploy), sollte es ein eigenständiges Projekt sein. – TobiSH