Compilación de Gradle sin pruebas
Quiero ejecutar gradle build
sin ejecutar las pruebas unitarias. Lo intenté:
$ gradle -Dskip.tests build
Eso no parece hacer nada. ¿Hay algún otro comando que pueda usar?
7 answers
Debe usar el argumento de línea de comandos -x
que excluye cualquier tarea.
Intenta:
gradle build -x test
Actualización:
El enlace en el comentario de Pedro cambió. Aquí está el diagrama de la guía del usuario de Gradle
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2017-12-30 14:17:34
Intenta:
gradle assemble
Para listar todas las tareas disponibles para tu proyecto, prueba:
gradle tasks
ACTUALIZACIÓN:
Esta puede no parecer la respuesta más correcta al principio, pero lea cuidadosamente gradle tasks
la salida o los documentos.
Build tasks
-----------
assemble - Assembles the outputs of this project.
build - Assembles and tests this project.
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2014-04-25 10:45:06
La respuesta aceptada es la correcta.
OTOH, la forma en que resolví esto anteriormente fue agregar lo siguiente a todos los proyectos:
test.onlyIf { ! Boolean.getBoolean('skip.tests') }
Ejecute la compilación con -Dskip.tests=true
y se omitirán todas las tareas de prueba.
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2014-03-11 20:44:40
Para excluir cualquier tarea de gradle, usa la opción de línea de comandos -x
. Ver el siguiente ejemplo
task compile << {
println 'task compile'
}
task compileTest(dependsOn: compile) << {
println 'compile test'
}
task runningTest(dependsOn: compileTest) << {
println 'running test'
}
task dist(dependsOn:[runningTest, compileTest, compile]) << {
println 'running distribution job'
}
Salida de: gradle -q dist -x runningTest
task compile
compile test
running distribution job
Espero que esto le dé la base
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2017-06-12 09:56:07
gradle build -x test --parallel
Si su máquina tiene varios núcleos. Sin embargo, no se recomienda utilizar parallel clean.
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2017-05-31 08:26:05
La forma diferente de deshabilitar las tareas de prueba en el proyecto es:
tasks.withType(Test) {enabled = false}
Este comportamiento es necesario a veces si desea desactivar las pruebas en uno de un proyecto(o el grupo de proyectos).
De esta manera se trabaja para todo tipo de tareas de prueba, no solo para las 'pruebas'de java. Además, este camino es seguro. Esto es lo que quiero decir
digamos: tienes un conjunto de proyectos en diferentes idiomas:
si intentamos añadir este tipo de registro en main build.gradle
:
subprojects{
.......
tests.enabled=false
.......
}
Fallaremos en un proyecto cuando si no tenemos tarea llamada pruebas
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2018-05-03 12:01:26
Puede intentar agregar las siguientes líneas a build.gradle
, **/*
excluir todas las pruebas.
test {
exclude '**/*'
}
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2018-05-29 11:17:20