Вы не можете передать параметры командной строки Gradle как зависимость задачи, вот о чем ваша ошибка выше.
Состояние блокировки записи, с --write-locks
или --update-locks
, действительно происходитв начале жизненного цикла сборки.
Вы можете в некоторой степени управлять ею из задачи с помощью следующего: * Создать задачу-заполнитель в своем сценарии сборки * В settings.gradle(.kts)
запросите запрошенные задачи из командной строки, и еслитам, измените параметры запуска:
if (startParameter.taskNames.contains('placeHolder')) {
startParameter.setWriteDependencyLocks(true)
}
Обратите внимание, что это не вариант, если вы пытаетесь заблокировать путь к классу самой сборки, что является одной из причин использования флага командной строки.
Обратите также внимание, что это просто позволяет заменить флаг, например --update-locks *:*
, вызовом задачи, таким как updateLocks
, но не будет работать, если эта задача связана как зависимость от других задач, как это необходимозапрашивается явно.А мутация стартового параметра после вычисляет график задачи слишком поздно в жизненном цикле.