Я использую Groovy для DSL механизма вычислений, и мне очень нравится поддержка, которую мы теперь имеем в Eclipse с STS и плагином Groovy-Eclipse (я на STS 2.8.0M2 с последней вехой Groovy-Eclipse 2.5 0,2).
Одна проблема, с которой я столкнулся, это то, что я не знаю, как заставить редактор Groovy «знать» об автоматическом импорте, который я добавил в мой обработчик скриптов, что означает, что Eclipse выдает мне целую кучу ложных ошибок. Если вы используете загрузчик классов Groovy, вы можете добавить дополнительный импорт для «free», чтобы избежать необходимости выполнять импорт в вашем скрипте.
У меня была игра с поддержкой DSLD в Groovy-Eclipse (которую можно использовать для добавления поддержки автозаполнения), но для меня не очевидно, что я могу с этим что-то делать - я не нахожу документация DSLD самая простая для подражания.
Параметры логического вывода для Groovy в Eclipse тоже не выглядели нужными.
Например:
def result = new CalculationResult()
выдает ошибку в классе CalculationResult
, поскольку он не импортирован, но сценарий будет корректно выполняться в моей среде из-за настроенного импорта в загрузчик классов Groovy. Я использую стандартную настройку импорта, предоставляемую Groovy, например:
import org.codehaus.groovy.control.customizers.ImportCustomizer
import org.codehaus.groovy.control.CompilerConfiguration
def importCustomizer = new ImportCustomizer()
importCustomizer.addImport 'CalculationResult', 'ch.hedgesphere.core.type.CalculationResult'
def configuration = new CompilerConfiguration()
configuration.addCompilationCustomizers(importCustomizer)
...
Любые указатели приветствуются.