Mam kompilację gradle z wieloma modułami. Chcę wykonać cele dla jednego modułu przy użyciu roota. Np .:
gradle build -Pmodule=ABC
gradle jar -Pmodule=ABC
gradle test -Pmodule=ABC
gradle compileJava -Pmodule=ABC
gradle customTask -Pmodule=ABC
etc.
Zatem każdy cel można uruchomić z poziomu roota, określając moduł. Czy jest na to prosty sposób?
Dzięki !
if (project.hasProperty('module') && module.equals('ABC')) { // execute module ABC } ...
. To jest to, co chcesz osiągnąć?Odpowiedzi:
Aby wykonać zadanie określonego podprojektu, określ jego ścieżkę do zadania . Na przykład:
Wiodący
:
oznacza projekt główny.ABC
jest podprojektem ibuild
zadaniem w tym projekcie.źródło
gradle :ABC:clean :ABC:build
Znalazłem szybki sposób
moduleA to katalog modułu.
Powyższe polecenie buduje a
moduleA
i wszystkie jego moduły podrzędne imoduleA
powinno być jego ścieżkąźródło
gradle build -p path\pathSt\moduleA
W systemie Mac OS jedyny wariant, który ze mną współpracuje:
ABC
to nazwa modułu(Może działać również w systemie Linux)
źródło
Jeśli Twoim IDE jest Android Studio, jest na to prosty sposób: po prostu wybierz folder modułu, który chcesz skompilować, a następnie kliknij Build i wybierz Make Module 'your module folder'.
źródło