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 docs
或 grails 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)
}
}
我创建了一个新的 Grails 3.3.6 应用程序。
按照此文档为我的项目创建文档:Grails Docs
上面的文档说使用 gradle docs
或 grails 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)
}
}