grails create-command MyExample
create-command
用途
create-command
命令用于创建新的 Grails Gradle 任务和壳命令,该命令可以通过终端窗口中的 grails
命令运行。
示例
命令
创建名为 grails-app/commands/PACKAGE_PATH/MyExampleCommand.groovy
的类,例如
import grails.dev.commands.*
class MyExampleCommand implements ApplicationCommand {
boolean handle(ExecutionContext ctx) {
def dataSource = applicationContext.getBean(DataSource)
return true
}
}
可通过 runCommand
命令执行命令。
grails run-command my-example
或以 Gradle 任务执行
gradle runCommand -Pargs="myExample"
如果你要执行的命令定义在已声明为依赖项的插件中,则可以使用缩写形式执行该命令,如下所示
grails my-example
或以 Gradle 任务执行
gradle myExample
要使缩写形式起作用,该插件必须同时位于 build.gradle
中的构建类路径和运行时类路径中
buildscript {
...
dependencies {
classpath "org.grails.plugins:myplugin:0.1-SNAPSHOT"
}
...
dependencies {
runtime "org.grails.plugins:myplugin:0.1-SNAPSHOT"
}
}
描述
为了分离代码生成和构建层,在 Grails 3.x 中使用 create-script
创建的脚本无权访问正在运行的应用程序实例。
相反,Grails 3.x 提供了一个称为 ApplicationCommand 的新概念,该概念通过 Gradle 调用来执行任务,例如与运行时中的类进行交互。