我的 BuildConfig.groovy 中有一个配置参数,需要我为每个插件放入很多目录。我喜欢创建一个简单的方法来为我生成所有这些目录。我知道 groovy 配置文件是 groovy 代码,但我似乎找不到与创建辅助方法的首选方法相关的任何信息。(例如 mavenRepo、grailsPlugins()、grailsHome() 等)。如果我想创建自己的辅助方法,我应该把它放在哪里,这样我就可以这样调用它:
someProperty = myHelperMethod()
有点更新。我直接在我的 BuildConfig.groovy 文件中编写了这个方法并且它有效!但我想把它搬出去,更好地组织起来。如何编写这样的方法并将它们公开给像 BuildConfig.groovy 这样的配置文件?
def pluginDirs() {
List dirs = []
String trash = "[:]/"
grails.plugin.location.each() { name, plugin ->
if( plugin.startsWith(trash) ) {
plugin = plugin.substring(trash.length())
}
dirs << "${plugin}/src/groovy" <<
"${plugin}/grails-app/controllers" <<
"${plugin}/grails-app/domain" <<
"${plugin}/grails-app/services" <<
"${plugin}/grails-app/taglib" <<
"${plugin}/grails-app/utils"
}
return dirs
}
额外的信用:其中一些插件使用 ${basedir} 来定义它们的路径,但是当我运行我的脚本之一时 ${basedir} 没有定义它会将 [:] 垃圾放在我的 URL 中。这就是为什么那个丑陋的代码在那里。