Как получить доступ к настройкам проекта SBT в плагине? - PullRequest
3 голосов
/ 23 января 2012

Я хотел бы получить доступ к названию проекта SBT, который использует плагин в плагине.

В пределах build.sbt У меня есть следующее:

name := "x_include"

Я предполагал, что получить это будет довольно просто с помощью name.key.label. Этот фрагмент кода, однако, возвращает имя проекта по умолчанию, «имя», указанное в SBT Keys.scala.

Сначала я подумал, что это может быть какая-то проблема с загрузкой / синхронизацией, однако это маловероятно из-за следующего вывода на консоль:

[info] Loading global plugins from /Users/ndidialaneme/.sbt/plugins
[info] Loading project definition from /Users/ndidialaneme/Sandbox/sbt-docbook-plugin/src/sbt-test/docbook/x_include/project
[info] Set current project to x_include (in build file:/Users/ndidialaneme/Sandbox/sbt-docbook-plugin/src/sbt-test/docbook/x_include/)
[info] Updating {file:/Users/ndidialaneme/Sandbox/sbt-docbook-plugin/src/sbt-test/docbook/x_include/}default-b1b964...
    ...
[info] ****  Project: name

Третья строка в вышеприведенном выводе явно использует имя моего проекта, в то время как последняя строка - нет.

Любой совет?


UPDATE:

Пол Батчер ответ правильно ответил на мой вопрос, однако мой вопрос сформулирован плохо.

Я работаю над плагином SBT. Имя, которое мне возвращают, понятно, это название плагина. На самом деле мне нужно вернуть имя проекта, использующего плагин. Я уже вижу, что это добавляет изрядную сложность, но я не думаю, что это невозможно реализовать.

Надеемся, что API / документация SBT вместе с xsbt-refle помогут мне решить эту проблему.

1 Ответ

3 голосов
/ 23 января 2012

Взгляните на xsbt-refle .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...