Сборка 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 '**/*'
}