gradle / gradle-jdocbook

A Gradle plugin for jdocbook
13 stars 14 forks source link

"gradle propertyReport" fails with "abstract book doesn't have component registry" #22

Open elygre opened 8 years ago

elygre commented 8 years ago

When using the default gradle task "propertyReport", which is also implicity called from "projectReport", an error message is thrown:

Caused by: java.lang.UnsupportedOperationException: abstract book doesn't have component registry
        at org.jboss.gradle.plugins.jdocbook.book.Book.getComponentRegistry(Book.groovy:86)
        at org.jboss.gradle.plugins.jdocbook.book.Book$getComponentRegistry$2.call(Unknown Source)
        at org.jboss.gradle.plugins.jdocbook.JDocBookConvention.getComponentRegistry(JDocBookConvention.groovy)
        at org.gradle.internal.metaobject.BeanDynamicObject$MetaClassAdapter.getProperties(BeanDynamicObject.java:345)
        at org.gradle.internal.metaobject.BeanDynamicObject.getProperties(BeanDynamicObject.java:159)
        at org.gradle.api.internal.plugins.DefaultConvention$ExtensionsDynamicObject.getProperties(DefaultConvention.java:170)
        at org.gradle.internal.metaobject.CompositeDynamicObject.getProperties(CompositeDynamicObject.java:77)
        at org.gradle.api.internal.project.AbstractProject$4.create(AbstractProject.java:808)
        at org.gradle.api.internal.project.AbstractProject$4.create(AbstractProject.java:806)
        at org.gradle.util.SingleMessageLogger.whileDisabled(SingleMessageLogger.java:171)
        at org.gradle.api.internal.project.AbstractProject.getProperties(AbstractProject.java:806)
        at org.gradle.api.tasks.diagnostics.PropertyReportTask.generate(PropertyReportTask.java:44)
        at org.gradle.api.tasks.diagnostics.AbstractReportTask$2.generateReport(AbstractReportTask.java:72)
        at org.gradle.api.tasks.diagnostics.internal.ReportGenerator.generateReport(ReportGenerator.java:58)
        at org.gradle.api.tasks.diagnostics.AbstractReportTask.generate(AbstractReportTask.java:78)

The workaround is fairly simple, but should be unneccesary:

propertyReport.deleteAllActions()