Dokka: Link to Android Support Library failed

Created on 5 Feb 2018  路  10Comments  路  Source: Kotlin/dokka

This is my configuration for dokka (0.9.16-eap-3) :

dokka {
    moduleName = 'app'
    outputFormat = 'html'
    outputDirectory = "$rootDir/javadoc"
    jdkVersion = 8

    externalDocumentationLink {
        url = new URL("https://developer.android.com/reference/")
    }
    externalDocumentationLink {
        url = new URL("http://reactivex.io/RxJava/javadoc/")
    }
    kotlinTasks {
        defaultKotlinTasks() + [project(":LIB1").compileDebugKotlin] + [project(":LIB2").compileDebugKotlin] + compileStagingDebugKotlin
    }
}

If I did this, I can't click on ViewModel or AppCompatActivity for instance, so I try :

dokka {
    moduleName = 'app'
    outputFormat = 'html'
    outputDirectory = "$rootDir/javadoc"
    jdkVersion = 8

    externalDocumentationLink {
        url = new URL("https://developer.android.com/reference/")
    }
    externalDocumentationLink {
        url = new URL("https://developer.android.com/reference/android/support/")
    }
    externalDocumentationLink {
        url = new URL("https://developer.android.com/reference/android/arch/")
    }
    externalDocumentationLink {
        url = new URL("http://reactivex.io/RxJava/javadoc/")
    }
    kotlinTasks {
        defaultKotlinTasks() + [project(":LIB1").compileDebugKotlin] + [project(":LIB2").compileDebugKotlin] + compileStagingDebugKotlin
    }
}

And the result is clickable but the URL is wrong like for AppCompatActivity :
https://developer.android.com/reference/android/support/android/support/v7/app/AppCompatActivity.html

question

Most helpful comment

Use following workaround:

    externalDocumentationLink {
        url = new URL("https://developer.android.com/reference/")
        packageListUrl = new URL("https://developer.android.com/reference/android/support/package-list")
    }

All 10 comments

Use following workaround:

    externalDocumentationLink {
        url = new URL("https://developer.android.com/reference/")
        packageListUrl = new URL("https://developer.android.com/reference/android/support/package-list")
    }

Perfect ! Thank you

I use command line building on windows 10 cmd, and what is wrong ??

java -jar dokka-fatjar.jar ..\MyTestDokka\app\src\main\java\home\testDokka -output .\kdoc-gfm -format gfm -nodeprecated -links "https://developer.android.com/reference/"^^"https://developer.android.com/reference/android/support/package-list"
pause

I tried also

https://developer.android.com/reference/^https://developer.android.com/reference/android/support/package-list

and

"https://developer.android.com/reference/"^"https://developer.android.com/reference/android/support/package-list"

error shown like this

~~~ some log

Analysing sources and libraries...
ERROR: error: source file or directory not found: -links
ERROR: error: source file or directory not found: https://developer.android.com/reference/^https://developer.android.com/reference/android/support/package-list

~~~ some log

and complete make KDoc files with no link for android library

Try this:

java -jar dokka-fatjar.jar ..\MyTestDokka\app\src\main\java\home\testDokka -output .\kdoc-gfm -format gfm -nodeprecated -links "https://developer.android.com/reference/^^https://developer.android.com/reference/android/support/package-list"
pause

error too..

ERROR: error: source file or directory not found: -links
ERROR: error: source file or directory not found: https://developer.android.com/reference/^^https://developer.android.com/reference/android/support/package-list

when i try this

"https://~^https://~"

it error too...

Which Dokka version are you using?

I use this Dokka.jar (download link) which located at read.me#using-command-line

it seems like 0.9.10/dokka-fatjar.jar

I just modify download link 0.9.10 to 0.9.15, and it look like works. but...

input >

java -jar dokka-fatjar-0.9.15.jar ..\MyTestDokka\app\src\main\java\home\testDokka -output .\kdoc-gfm -format gfm -nodeprecated -links "https://developer.android.com/reference/^https://developer.android.com/reference/android/support/package-list"

---

output >

Module:
Output: .\kdoc-gfm
Sources: ~~
Classpath: ~~
Analysing sources and libraries...
  package home.testDokka.bluetooth.le: 2 declarations
WARN: ~~
WARN: ~~
...
WARN: ~~
WARN: ~~ (about no documentation, unresolved type, can't find node by signature)
done in 12 secs
generation completed with 1318 warnings

and fun onCreate(savedInstanceState: <ERROR CLASS>?) again. 馃槶

OK, I see, means that incorrect classpath provided, not that links incorrect

@mgcation Is your issue still not resolved? Please, report it separately if so. Closing this issue as the original question answered.

Was this page helpful?
0 / 5 - 0 ratings

Related issues

gabrielittner picture gabrielittner  路  3Comments

hamza1311 picture hamza1311  路  5Comments

Groostav picture Groostav  路  6Comments

joserobjr picture joserobjr  路  4Comments

rbares picture rbares  路  4Comments