Question
If I try to use some of the output formats which are moved to plugins in new Dokka version (javadoc, kotlin-as-java etc.)
I am getting:
ExtensionPoint: org.jetbrains.dokka.CoreExtensions/renderer was expected to have exactly one extension registered, but none was found.
This is how I added output format:
dokka {
outputDirectory = "$buildDir/javadoc"
outputFormat = 'javadoc'
}
Is this mean that even for existing (default) plugins there should be different configuration options defined? Something like explained in developers guide for plugins:
```
val customPlugin by configurations.creating
dependencies {
customPlugin("[custom plugin load signature]")
}
tasks {
val dokka by getting(DokkaTask::class) {
pluginsConfig = alternativeAndIndependentPlugins
outputDirectory = dokkaOutputDir
outputFormat = "html"
[...]
}
}
``
If yes, how this setup is defined in groovy syntax forbuild.gradle` files?
Installation
086651dc)@kamildoleglo @sellmair
With 0.11.0-dev-62, I'm getting these 4 tasks for a project, under documentation (gradle):
And also side-note: It's pretty awesome that in the Javadoc output format, Java files get Java method signature and Kotlin files get Kotlin method signatures!
You can also try this build: 1.4.0-M3-dev-65 (or higher) to get the dokka{$format} tasks automatically created.
Here would be a example on how to configure a custom format task (but this might change later)
val dokkaCustom by tasks.register("dokkaCustom") {
dependencies {
plugins("...") // <- custom format
}
}
Please note: Custom plugin formats need to declare a dependency to the base plugin if the plugin is extending base!
Thank you for info.
@sellmair note that if you use 1.4.0-M3 branch and try to use dokkaJavadoc task, that task looks for org.jetbrains.dokka:dokka-core:0.11.0-SNAPSHOT dependency. If you switch to dev-0.11.0 branch, that one is publishing 1.4.0-M3-SNAPSHOT.
What I needed to do is to go to dev-0.11.0, change gradle.properties to get 0.11.0-SNAPSHOT locally, and then it was okay to use 1.4.0-M3 in my android project.
Apart of that where you see 1.4.0-M3-dev-65? Is that full branch name or -dev-65 is some addition which should tell me more about versions? If it is full branch name I don't see that one :)
@sellmair note that if you use 1.4.0-M3 branch and try to use dokkaJavadoc task, that task looks for org.jetbrains.dokka:dokka-core:0.11.0-SNAPSHOT dependency. If you switch to dev-0.11.0 branch, that one is publishing 1.4.0-M3-SNAPSHOT.
What I needed to do is to go to dev-0.11.0, change gradle.properties to get 0.11.0-SNAPSHOT locally, and then it was okay to use 1.4.0-M3 in my android project.
I have trouble reproducing this. Does this also happen with artifacts like -dev-68?
Apart of that where you see 1.4.0-M3-dev-65? Is that full branch name or -dev-65 is some addition which should tell me more about versions? If it is full branch name I don't see that one :)
The "dev-65" is just appended automatically by our CI. 65. The build number is automatically incremented.
I am closing this for now: Feel free to re-open this issue for further questions 鈽猴笍
Thank you @sellmair for the help :)
Regarding:
I have trouble reproducing this. Does this also happen with artifacts like -dev-68?
I am sorry for late reply, I changed my laptop, and lost reference to the commit ID where I had this problem.
It was commit on 1.4.0-M3 branch at the time of writing the comment above
In general, I don't have that issue anymore.
Most helpful comment
You can also try this build: 1.4.0-M3-dev-65 (or higher) to get the
dokka{$format}tasks automatically created.Here would be a example on how to configure a custom format task (but this might change later)
Please note: Custom plugin formats need to declare a dependency to the base plugin if the plugin is extending base!