我创建了一个新的Grails 3.3.6应用程序。
以下文档为我的项目创建文档:Grails Docs
以上文档说要在以下参数中使用gradle docs
或grails doc
。
参数:
-init-创建模板项目文档项目(可选)
-pdf-为项目文档创建PDF输出(可选)
触发事件:
DocStart-开始生成文档之前
DocEnd-文档生成完成后
我创建了一个脚本文件夹,并添加了具有以下内容的_Events.groovy文件。
// document-service / scripts / _Events.groovy
eventDocStart = { kind ->
println "**************************** doc start"
}
eventDocEnd = {
println "**************************** doc end"
}
当我运行gradle docs
时。 Java Docs和groovy文档正在运行,但事件并未触发。并且--pdf
参数无效。
当我运行grails doc
时。我得到Command not found doc
我在做什么错了?
答案 0 :(得分:1)
该文档是错误的,并且在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)
}
}