Grails 3.3.6 не запускает события DocStart и DocEnd для командных документов - PullRequest
0 голосов
/ 29 июня 2018

Я создал новое приложение Grails 3.3.6.

После этого документа для создания документации для моего проекта: Документы Grails

В приведенном выше документе сказано использовать gradle docs или grails doc со следующими аргументами ..

Аргументы:

- init - Создать шаблон проекта проектной документации (необязательно)

- pdf - Создать вывод PDF для проектной документации (необязательно)

Запущенные события:

DocStart - до начала генерации документации

DocEnd - После завершения генерации документации

Я создал папку сценариев и добавил _Events.groovy файл со следующим содержимым.

// документ-служба / скрипты / _Events.groovy

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

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

Когда я бегу gradle docs. Java Docs и Groovy Docs работают, но события не запускаются. И --pdf аргумент не работает.

Когда я бегу grails doc. Я получаю Command not found doc

Что я делаю не так?

1 Ответ

0 голосов
/ 10 июля 2018

Документация неверна, и она больше не действует в 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)
    }
}
...