Существует множество способов определения методов расширения для существующих типов в Groovy, например, метакласс, категории, модули расширения и т. д. Я хотел бы знать, какие из них совместимы со статической компиляцией через @CompileStatic. Я знаю, что можно поместить предварительно созданный jar модуля расширения в путь к классам, предоставляя метод расширения, например, для Строка, а затем написать класс @CompileStatic Groovy, который использует методы расширения из модуля расширения. Тем не менее, я хотел бы иметь решение, в котором я могу определять методы расширения в одном проекте, чтобы мне не приходилось создавать модуль расширения заранее. Это возможно в Groovy?