0
Так что, когда я наивная вещь и просто использовать:Как использовать Logger в классе gradle buildSrc?
logger.info("something")
я получаю:
<myfile>.groovy: 52: Apparent variable 'logger' was found in a
static scope but doesn't refer to a local variable, static field or class.
Possible causes:
You attempted to reference a variable in the binding or an
instance variable from a static context.
You misspelled a classname or statically imported field.
Please check the spelling.
You attempted to use a method 'logger' but left out brackets
in a place not allowed by the grammar.
@ line 52, column 9.
logger?.info("Resolving ${projectPath} to ${version}")
Я пробовал много вариантов, как создание переменной класса в конструкторе:
static private log = Logging.getLogger(MyClass)
Это не удается, так как регистрирование находится в статическом масштабе ...
Какая здесь магия?
Похоже, что ведение журнала градиента имеет смысл только в рамках проекта или контекста задачи. –
Да, определенно. Вам нужно, чтобы экземпляр 'project' использовал регистратор. Поэтому реализуйте «Плагин» или расширьте «DefaultTask». – Opal