Groovy DSL脚本
我编写了一个应该应用于DSL脚本的全局AST转换,现在正在选择将特定groovy脚本识别为这些DSL脚本的最佳方法 我考虑了以下选择:Groovy DSL脚本,groovy,dsl,Groovy,Dsl,我编写了一个应该应用于DSL脚本的全局AST转换,现在正在选择将特定groovy脚本识别为这些DSL脚本的最佳方法 我考虑了以下选择: 自定义文件扩展名;这里最大的缺点是IDE支持:许多几乎不支持编译/编辑具有非groovy扩展名的文件(您可以配置编辑器,但它需要一些调整) 一个特殊的文件名后缀(前缀),但在这种情况下,后缀应该是唯一的(因此相对较长),以避免常规groovy文件的意外转换(我当前的选择) 本地AST转换应用于脚本类,其缺点是需要为每个脚本编写一些样板代码 在脚本中有一些唯一的第
你认为什么是最好的选择?为什么?有没有我没有考虑过的其他选项?如果您使用GroovyShell编译DSL脚本,您可以使用GlobalAstTransformation)对其应用转换。出于性能原因,我希望在编译时应用转换。它还允许我以
execute(ClassName)
的形式运行脚本,而不是execute(“path/to/the/script/ClassName.groovy”)