В SBT я создаю новую конфигурацию под названием katebush
следующим образом:
lazy val KateBush: Configuration = config("katebush")
Когда я пытаюсь запустить katebush:compile
, я получаю сообщение об ошибке. Это то, что я ожидаю.
> katebush:compile
[error] No such setting/task
[error] katebush:compile
[error] ^
Теперь я расширяю Compile
в моем определении конфигурации, и я ожидаю получить компиляцию из унаследованной области.
lazy val KateBush: Configuration = config("katebush") extend Compile
За исключением того, что он не работает:
> katebush:compile
[error] No such setting/task
[error] katebush:compile
[error] ^
Но если я добавлю значения по умолчанию в конфигурацию (в build.sbt
), это выглядит следующим образом:
lazy val KateBush: Configuration = config("katebush") extend Compile
inConfig(KateBush)(Defaults.compileSettings)
он отлично работает:
> katebush:compile
[info] Updating {file:/Users/jacek/sandbox/so-25596360/}so-25596360...
[info] Resolving org.fusesource.jansi#jansi;1.4 ...
[info] Done updating.
[success] Total time: 0 s, completed Aug 31, 2014 11:35:47 PM
Итак, мой вопрос: что именно делает extend
для конфигурации?