Можно ли переопределить или изменять встроенные задачи SBT (например, компиляцию), чтобы зависеть от пользовательских задач в моем собственном сборке. Переопределение E.G. «Компиляция» непосредственно невозможна, поскольку он был определен с Lazy Val, и, таким образом, со ссылкой на Super.comPile излучают ошибку компилятора «Super нельзя не использовать на ленивом значении».
Так как этот вопрос возникает, когда Google указывает, как добавить зависимость в SBT, и текущие ответы устарели с 0.13.x и удалены в 1.0, вот обновленный ответ, при условии, что printAction
задача, от которой зависит compile
:
(Compile / compile) := ((Compile / compile) dependsOn printAction).value