Grails 在BuildConfig中定义数据库迁移插件时出错

Grails 在BuildConfig中定义数据库迁移插件时出错,grails,grails-plugin,database-migration,buildconfig,Grails,Grails Plugin,Database Migration,Buildconfig,我试图遵循建议的良好实践,将插件放在BuildConfig.groovy而不是application.properties中,这对于数据库迁移是行不通的。我试着用编译、构建和运行时的范围来定义它。当我运行grails refresh dependencies时,我收到以下错误消息: 错误警告:指定的依赖项定义运行时(数据库迁移:1.3.2)无效!跳过 (当然,消息中的范围因指定的范围而异)。我是否应该使用另一个作用域,或者这个插件在某种程度上是特殊的?遗憾的是,消息没有说明哪些作用域是有效的-这

我试图遵循建议的良好实践,将插件放在
BuildConfig.groovy
而不是
application.properties
中,这对于数据库迁移是行不通的。我试着用
编译
构建
运行时
的范围来定义它。当我运行
grails refresh dependencies
时,我收到以下错误消息:

错误警告:指定的依赖项定义运行时(数据库迁移:1.3.2)无效!跳过

(当然,消息中的范围因指定的范围而异)。我是否应该使用另一个作用域,或者这个插件在某种程度上是特殊的?遗憾的是,消息没有说明哪些作用域是有效的-这样我就不必问这个问题:-)

我只想使用IDE中的插件来生成xml文件,因此我想将其从war文件中排除。如果默认情况下所需的作用域将包括它,那么“export=false”是否表示这一点

我必须承认,我找不到各种范围的明确定义,以及什么范围包括什么。有人能给我指点什么吗


我应该补充一点,这是Grails 2.1.1和GGTS 3.1。

我刚刚发现了我的错误。我没有注意到插件名称前有一个冒号。我有:

runtime("database-migration:1.3.2")
我应该写的是:

runtime(":database-migration:1.3.2")

“Duh!”的组合这是多么奇怪的语法啊,每个词前都需要一个冒号。哦,好吧,事情就是这样。让我想起了黑暗时代的一个客户,当时一群人正在仔细研究一个行为不端的Cobol程序,没有人能找出原因。我偷看了一眼,尽管我几乎不认识Cobol。三分钟后,我指出在“if”语句之后和“else”语句之前缺少一个句号。至少一个冒号有两个句号,所以我可能不得不承认我的视力不是原来的样子…

你在BuildConfig中到底放了什么,在哪里?插件依赖项看起来像
运行时(':database migration:1.3.2')
(注意前面的冒号),需要进入
插件
块,而不是
依赖项
块。下面是一个作用域。来自我的BuildConfig.groovy:plugins{build(“:tomcat:$grailsVersion”,“:release:2.0.3”,“:rest client builder:1.0.2”){export=false}runtime“database migration:1.3.2”}“build”条目是在我作为插件创建项目时生成的。@uchamp感谢链接。我将添加书签。尽管我无法确定是否存在表示“将其用于命令,但从war中排除”的范围。