如何使IntelliJ IDEA识别Grails数据库迁移插件的DSL?

时间:2012-04-10 19:01:27

标签: grails intellij-idea dsl grails-plugin liquibase

通过精彩的db migration Grails plugin,将Liquibase数据库迁移捆绑到Grails项目中非常容易,这样我的架构就可以与我的应用程序代码一起进行版本化,并提供一个漂亮,干净的易于编写脚本升级/降级机制。

唯一的困难是IntelliJ IDEA对数据库迁移插件使用的DSL一无所知!我知道IntelliJ IDEA can deal with specialized DSLs是这样的,但我似乎无法在任何地方找到db migration插件的gDSL描述符。

大多数DSL直接来自Liquibase XML架构,并添加了一些额外的Grails优点,以便您可以在迁移期间运行任意Groovy代码。

有没有人知道是否有针对Grails数据库迁移插件的IntelliJ IDEA的gDSL描述符文件,或者我可能找到其他人制作的gDSL描述符文件,或者我可能会如何自己创建一个?

2 个答案:

答案 0 :(得分:0)

这可能不是你想要的,但我所做的是在changelog XML文件中写出liquibase特定的位。这样我就可以获得liquibase XML模式提供的自动完成功能。这被证明在intellij想法中非常顺利。

然后,如果您愿意,还有一个命令:dbm-changelog-to-groovy将您的xml转换为groovy。

但是,我不打扰第二步。我在xml文件中保存了与liquibase相关的更改,并在groovy文件中保留了自定义groovy脚本,例如复杂的数据迁移任务,我对此非常满意。

答案 1 :(得分:0)

IntelliJ允许creation of plugins for custom languages这是人们需要专门为liquibase DSL做的事情。