mamy wielu projektów Gradle konfiguracji z jednym słoiku Java dla każdego podprojektu:skopiować wszystkie utworzone i osób trzecich słoiki w jednym folderze z Gradle
- root-project
|-sub-project-a
|-sub-project-b
|-sub-project-c
teraz, ponieważ jesteśmy tworzenia aplikacji WebStart Java , musimy podpisać wszystkie słoiki projektu, a także wszystkie biblioteki (zależności) innych firm.
Moje podejście polegało teraz na skopiowaniu wszystkich zbudowanych podprojektów i wszystkich bibliotek zewnętrznych do osobnego folderu i wykonanie zadania do podpisania. Jednak nie mogę skopiować słoików.
To było moje podejście w build.gradle root:
task copyFiles(type: Copy, dependsOn: subprojects.jar) {
from configurations.runtime
from("build/libs")
into("webstart/lib")
include('*.jar')
}
razem z:
task signAll(dependsOn: [copyFiles]) << {
new File('webstart/signed').mkdirs()
def libFiles = files { file('webstart/lib').listFiles() }
...
}
Potem próbował wykonać Gradle SIGNALL. Jednak mogę znaleźć pusty słoik z nazwą projektu głównego w folderze webstart/lib.
Może moje podejście jest całkowicie błędne. Co muszę zrobić, aby skopiować wszystkie utworzone słoiki stron trzecich do jednego folderu?
Cześć, dzięki za odpowiedź, to działa świetnie! Tylko jedna rzecz: teraz słoiki wszystkich moich własnych projektów są kopiowane zarówno do dest, jak i do dest/lib. Na przykład. jeśli podprojekt-a spełnia podprojekt-b, to pod-projekt-b.jar jest kopiowany zarówno do dest, jak i do dest/lib. W jaki sposób zapobiegać kopiowaniu współdzielonych projektów również do dest/lib? – Dominic