Gradle построить без тестов

Я хочу выполнить gradle build без выполнения модульных тестов. Я пробовал:

$ gradle -Dskip.tests build

Это ничего не делает. Есть ли какая-нибудь другая команда, которую я мог бы использовать?

+539
источник поделиться
9 ответов

Вы должны использовать -x командной строки -x который исключает любую задачу.

Пытаться:

gradle build -x test 

Обновить:

Ссылка в комментарии Питера изменена. Вот схема из руководства пользователя Gradle

+1065
источник

Try:

gradle assemble

Чтобы просмотреть все доступные задачи для вашего проекта, попробуйте:

gradle tasks

UPDATE:

Сначала это может показаться не самым правильным ответом, но внимательно прочтите gradle tasks вывод или документы.

Build tasks
-----------
assemble - Assembles the outputs of this project.
build - Assembles and tests this project.
+87
источник

Принятый ответ правильный.

OTOH, то, как я решил раньше, было добавить следующее ко всем проектам:

test.onlyIf { ! Boolean.getBoolean('skip.tests') }

Запустите сборку с помощью -Dskip.tests=true, и все тестовые задачи будут пропущены.

+32
источник

Вы можете добавить следующие строки в build.gradle, **/* исключает все тесты.

test {
    exclude '**/*'
}
+7
источник

Ссылка

Чтобы исключить любую задачу из gradle, используйте опцию -x командной строки. См. Приведенный ниже пример

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'
}

Вывод: gradle -q dist -x runningTest

task compile
compile test
running distribution job

Надеюсь, это даст вам базовый

+4
источник

Вы можете исключить задачи

 gradle build --exclude-task test 

https://docs.gradle.org/current/userguide/command_line_interface.html#sec:command_line_executing_tasks

+2
источник

Другой способ отключить тестовые задачи в проекте:

tasks.withType(Test) {enabled = false}

такое поведение иногда требуется, если вы хотите отключить тесты в одном из проектов (или в группе проектов).

Этот способ работает для всех видов тестовых задач, а не только для Java-тестов. Также этот способ безопасен. Вот что я имею в виду, скажем так: у вас есть набор проектов на разных языках: если мы попытаемся добавить такую запись в основной build.gradle:

 subprojects{
 .......
 tests.enabled=false
 .......
}

мы потерпим неудачу в проекте, если у нас нет задачи, называемой тестами

+1
источник
gradle build -x test --parallel

Если ваша машина имеет несколько ядер. Однако не рекомендуется использовать параллельную очистку.

0
источник

Пожалуйста, попробуйте это:

gradlew -DskipTests=true build

0
источник

Посмотрите другие вопросы по метке или Задайте вопрос