Сборка Gradle без тестов

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

$ gradle -Dskip.tests build

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

7 ответов


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

попробуй:

gradle build -x test 

обновление:

ссылка в комментарии Питера изменилась. Вот это - схемы С пользователь Gradle в-Х


попробуй:

gradle assemble

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

gradle tasks

обновление:

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

Build tasks
-----------
assemble - Assembles the outputs of this project.
build - Assembles and tests this project.

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

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

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

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


ссылка

чтобы исключить любую задачу из gradle use . См. ниже пример

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

надеюсь, это даст вам основные


gradle build -x test --parallel

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


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

tasks.withType(Test) {enabled = false}

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

этот способ работает для всех видов тестовых задач, а не только для java-тестов. Кроме того, этот путь безопасен. Вот что я имею в виду допустим: у вас есть набор проектов на разных языках: если мы попытаемся добавить такую запись в main build.gradle:

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

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


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

test {
    exclude '**/*'
}