Tengo una compilación de gradle de múltiples módulos. Quiero ejecutar objetivos para un módulo usando root. Ej:
gradle build -Pmodule=ABC
gradle jar -Pmodule=ABC
gradle test -Pmodule=ABC
gradle compileJava -Pmodule=ABC
gradle customTask -Pmodule=ABC
etc.
Por lo tanto, cada objetivo se puede ejecutar desde la raíz especificando el módulo. ¿Hay una manera simple de hacer esto?
Gracias !
if (project.hasProperty('module') && module.equals('ABC')) { // execute module ABC } ...
. ¿Esto es lo que quieres lograr?Respuestas:
Para ejecutar una tarea de un subproyecto específico, especifique su ruta de tarea . Por ejemplo:
El líder
:
representa el proyecto raíz.ABC
es el subproyecto ybuild
una tarea en ese proyecto.fuente
gradle :ABC:clean :ABC:build
Encontrado un camino rápido
moduleA es el directorio del módulo.
El comando anterior construye
moduleA
ay todos sus submódulos, ymoduleA
debería ser su rutafuente
gradle build -p path\pathSt\moduleA
En Mac OS, la única variante que funciona conmigo:
ABC
es el nombre del módulo(También podría estar funcionando en Linux)
fuente
Si su IDE es Android Studio, hay una manera simple: simplemente elija la carpeta del módulo que desea compilar, luego haga clic en Construir y elija Crear módulo 'su carpeta de módulos'.
fuente