2011-12-12 11 views
7

No entiendo por qué existe la tarea 'buildNeeded' que proporciona el complemento java. ¿No soluciona el problema la tarea 'compilar'? La documentación Gradle dice:Caso de uso para la tarea buildNeeded?

buildNeeded: Realiza una construcción completa del proyecto y todos los proyectos de los que depende.

y

construcción: Realiza una construcción completa del proyecto.

¿Debe/no debe la tarea 'compilar' compilar y construir todas las cosas necesarias? ¿Por qué distinguir entre 'compilar' y 'compilar'?

+0

: D http://gradle.org/docs/current/userguide/multi_project_builds.html – Dori

Respuesta

7

buildNeeded ejecuta un completo build para todos los proyectos de los que depende un proyecto. En particular, ejecuta test para los proyectos dependientes, lo que puede tener sentido si quiere ir a lo seguro. En comparación, build solo ejecuta un conjunto mínimo de tareas para los proyectos dependientes (por ejemplo, jar), lo suficiente como para satisfacer la dependencia. build se usa con más frecuencia que buildNeeded.

1

build no llama a una compilación completa en todos los proyectos secundarios.

Si el proyecto no tiene proyectos dependientes, no hace ninguna diferencia.

La idea es que si cambia la API dentro de un proyecto principal, quiere volver a compilar todos los proyectos secundarios con el nuevo.

+0

Bien, creo que me he perdido algo. ¿Hay alguna diferencia entre el proyecto secundario y el proyecto secundario? ¿Qué tal 'gradle clean build'? ¿Esto hace la compilación completa en los proyectos secundarios/secundarios? – Cengiz

+1

@Cengiz: gradle clean build primero hará una limpieza (lo que significa que borrará tu carpeta/build) y luego realizará una compilación solo para el proyecto. Tiene el mismo efecto que 'gradle clean' seguido de 'gradle build'. –

Cuestiones relacionadas