Grails 3.3.6 没有为命令 gradle 文档触发 DocStart 和 DocEnd 事件

Grails 3.3.6 not firing DocStart and DocEnd Events for command gradle docs

我创建了一个新的 Grails 3.3.6 应用程序。

按照此文档为我的项目创建文档:Grails Docs

上面的文档说使用 gradle docsgrails doc 并带有以下参数..

Arguments:

--init - Create a template project documentation project (optional)

--pdf - Create PDF output for project documentation (optional)

Fired Events:

DocStart - Before documentation generation begins

DocEnd - After documentation generation completes

我创建了一个脚本文件夹并添加了具有以下内容的 _Events.groovy 文件。

//document-service/scripts/_Events.groovy

eventDocStart = { kind ->
    println "**************************** doc start"
}

eventDocEnd = {
    println "**************************** doc end"
}

当我运行gradle docs。 Java 文档和 groovy 文档正在 运行,但事件没有被触发。 --pdf 参数不起作用。

当我运行grails doc。我得到 Command not found doc

我做错了什么?

文档有误,这在 Grails 3 中不再有效。我通过拦截 gradle docs 命令解决了我的问题。

task generateDocs (type: GenerateDocsTask) {}

tasks.groovydoc.dependsOn(generateDocs)

class GenerateDocsTask extends DefaultTask {

    @TaskAction
    def docGenerate() {
        List urls = project.sourceSets.main.runtimeClasspath.files.collect { it.toURI().toURL() }
        URLClassLoader classLoader = new URLClassLoader(urls as URL[], (ClassLoader) null)
        def gdocGenerator = classLoader.loadClass("com.rax.DocGenerator").newInstance()
        gdocGenerator.generateGdoc(classLoader)
    }
}