¿Hay alguna manera de forzar una nueva ejecución de una tarea gradle o restablecer todas las tareas al estado no ACTUALIZADO?¿Restablecer la propiedad ACTUALIZADA de las tareas de gradle?
Respuesta
Intenta ejecutar tu compilación con -C rebuild
que reconstruye la memoria caché de Gradle.
En las nuevas versiones de Gradle, utilice --rerun-tasks
Puede utilizar cleanTaskname
Digamos que usted tiene
:someproject:sometask1 UP-TO-DATE
:someproject:sometask2 UP-TO-DATE
:someproject:sometask3 UP-TO-DATE
Y desea forzar digamos sometask2 a correr de nuevo se puede
someproject:cleanSometask2
antes de ejecutar la tarea que se ejecuta todo.
Aparentemente en gradle, cada tarea que entiende UP-TO-DATE también comprende cómo limpiarse.
Si sólo desea una sola tarea se ejecute siempre, puede establecer la propiedad outputs
en el interior de la tarea.
outputs.upToDateWhen { false }
Por favor, tenga en cuenta que si su tarea no tiene ninguna entrada de archivo definidos, Gradle puede omitir la tarea, incluso cuando se utiliza el código de seguridad. Por ejemplo, en una tarea Zip o Copiar, debe haber al menos un archivo proporcionado en la fase de configuración de la definición de la tarea.
Esto no hace nada por mí. Lo agregué a una tarea y obtuve "ACTUALIZADO". Lo curioso es que es un ZipTask y eliminé el archivo de destino. – maaartinus
Esto es increíble para el uso de la siguiente manera: 'tasks.whenTaskAdded {theTask -> si (theTask.name.startsWith ("Dex")) { theTask.outputs.upToDateWhen {false} { theTask.doLast tarea ->. ..}}} ' –
No funciona para mí :( –
tuve un caso difícil establecer donde outputs.upToDateWhen { false }
dentro de la tarea o la adición de la bandera --rerun-tasks
no ayuda, ya que se mantiene fija la tarea de setOnlyIf
a false
cada vez que me encontré con él.
añadiendo lo siguiente a build.gradle
obligaron a la ejecución de myTask
:
gradle.taskGraph.whenReady { taskGraph ->
def tasks = taskGraph.getAllTasks()
tasks.each {
def taskName = it.getName()
if(taskName == 'myTask') {
println("Found $taskName")
it.setOnlyIf { true }
it.outputs.upToDateWhen { false }
}
}
}
- 1. Gradle acumulación de tareas ya existe problema
- 2. ¿Hay alguna manera de enumerar dependencias de tareas en Gradle?
- 3. Cómo restablecer la propiedad transformar UIImageView
- 4. Restablecer propiedades de una cuadrícula de propiedad
- 5. Eliminar/restablecer la propiedad de comportamiento de CSS
- 6. ¿Cuál es la diferencia entre estas sintaxis de definición de tareas en gradle?
- 7. Intentando comprender las propiedades del proyecto de gradle
- 8. ¿Por qué LoadArchives no aparece en la lista de tareas?
- 9. Qt fijación de precios (la más actualizada)
- 10. entendimiento mavenDeployer de Gradle
- 11. Gradle - Eliminar no funciona
- 12. ¿Cómo "restablecer" las respuestas DETERMINISTICAS de UDF?
- 13. cómo restablecer todas las estadísticas de mysql?
- 14. ¿Agregar nuevas dependencias de tareas a las tareas SBT integradas?
- 15. jqGrid - cómo restablecer las opciones de búsqueda?
- 16. ORMLite restablecer todas las tablas
- 17. valor obtener de fila actualizada
- 18. MySQL: filas actualizada de retorno
- 19. ¿Cuál es la diferencia entre las tareas de mapa local de Rack y las tareas de mapa de datos locales?
- 20. ¿Cómo obtener la fila de identificación de la fila actualizada?
- 21. valor de la etiqueta de la página maestra no actualizada página de contenido de la forma
- 22. ¿Cómo puedo "restablecer" la propiedad de un control a su valor de estilo original (como Fondo)
- 23. Rake Las tareas de RSpec no aparecen
- 24. ¿Cómo hacer las tareas de inicio idempotentes?
- 25. ¿Cómo afectan las Tareas en la Biblioteca paralela de tareas a ActivityID?
- 26. Dependencia de prueba de Gradle
- 27. ¿Reactivarán las Extensiones reactivas (Rx) la Biblioteca de tareas paralelas?
- 28. Usar las tareas de la comunidad msbuild sin instalar
- 29. Cómo ejecutar las pruebas de pepino-jvm con Gradle
- 30. Restablecer System.Lazy
Esto funciona definitivamente. ¿Hay alguna tarea "cleanAll"? –
'gradle clean' limpiará todo para el proyecto en el que se encuentra. Básicamente borra su carpeta principal de salida que es '/ build' por defecto. Esto es lo que estabas buscando? –
No. No se volverá a configurar de forma actualizada si se capturó la actualización como archivos de salida para una tarea determinada. Es decir, si tuve una parte de la ruptura de compilación pero tuve éxito en general, el estado capturado es incorrecto, y necesito despejarlo. –