Я хочу выполнить gradle build
без выполнения модульных тестов. Я пробовал:
$ gradle -Dskip.tests build
Это ничего не делает. Есть ли какая-нибудь другая команда, которую я мог бы использовать?
Я хочу выполнить gradle build
без выполнения модульных тестов. Я пробовал:
$ gradle -Dskip.tests build
Это ничего не делает. Есть ли какая-нибудь другая команда, которую я мог бы использовать?
Вы должны использовать -x
командной строки -x
который исключает любую задачу.
Пытаться:
gradle build -x test
Обновить:
Ссылка в комментарии Питера изменена. Вот схема из руководства пользователя Gradle
Try:
gradle assemble
Чтобы просмотреть все доступные задачи для вашего проекта, попробуйте:
gradle tasks
UPDATE:
Сначала это может показаться не самым правильным ответом, но внимательно прочтите 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
, и все тестовые задачи будут пропущены.
Вы можете добавить следующие строки в build.gradle
, **/*
исключает все тесты.
test {
exclude '**/*'
}
Чтобы исключить любую задачу из 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
Надеюсь, это даст вам базовый
Вы можете исключить задачи
gradle build --exclude-task test
Другой способ отключить тестовые задачи в проекте:
tasks.withType(Test) {enabled = false}
такое поведение иногда требуется, если вы хотите отключить тесты в одном из проектов (или в группе проектов).
Этот способ работает для всех видов тестовых задач, а не только для Java-тестов. Также этот способ безопасен. Вот что я имею в виду, скажем так: у вас есть набор проектов на разных языках: если мы попытаемся добавить такую запись в основной build.gradle
:
subprojects{
.......
tests.enabled=false
.......
}
мы потерпим неудачу в проекте, если у нас нет задачи, называемой тестами
gradle build -x test --parallel
Если ваша машина имеет несколько ядер. Однако не рекомендуется использовать параллельную очистку.
Пожалуйста, попробуйте это:
gradlew -DskipTests=true build