【问题标题】:Dokka plugin not found in Android studio 3在 Android Studio 3 中找不到 Dokka 插件
【发布时间】:2022-01-04 03:03:41
【问题描述】:

我正在尝试在我的 Kotlin 项目中使用 dokka 插件,但收到以下消息:

错误:(7, 0) 未找到 ID 为“org.jetbrains.dokka”的插件。

我使用的是 Android Studio 3.0 版。

提前致谢。

【问题讨论】:

  • 你是否添加了依赖项 { classpath "org.jetbrains.dokka:dokka-gradle-plugin:${dokka_version}" } 并确保 gradle 没有处于离线模式
  • 是添加依赖项,但我收到以下错误:错误:(13, 0) 无法为 org.gradle.api.internal.artifacts 类型的对象获取未知属性 'dokka_version'。 dsl.dependencies.DefaultDependencyHandler.
  • @Melchior 你有没有发现问题?下面的解决方案只不过是您(和我)已经遵循的说明。还少了一个步骤。那是什么?

标签: android kotlin kotlin-dokka


【解决方案1】:

第一次在 Android Studio 中使用 Dokka 和 Kotlin

#1。设置

##1.1 build.gradle(Project) 中的设置

buildscript {
    ext {
        version_dokka = "0.10.0"
        version_gradle = "3.5.2"
        version_kotlin = "1.3.41"
        ...
    }
    dependencies {
        classpath "com.android.tools.build:gradle:$version_gradle"
        classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$version_kotlin"
        classpath "org.jetbrains.dokka:dokka-gradle-plugin:${version_dokka}"
        ...
    }
}
allprojects {
    repositories {
        google()
        jcenter()
    }
}

task clean(type: Delete) {
    delete rootProject.buildDir
}

##1.2 build.gradle(Module:app) 中的设置

android {
    compileSdkVersion 29
    buildToolsVersion "29.0.2"
    ...
    // Dokka used for auto-generation documentation
    dokka {
        outputFormat = 'html'
        //outputDirectory = "$buildDir/dokka"

        configuration {
            // Do not output deprecated members
            skipDeprecated = true

            // Emit warnings about not documented members.
            reportUndocumented = true

            // Do not create index pages for empty packages
            skipEmptyPackages = true
        }
    }
}

// workaround: create DocsByDokka
task DocsByDokka (type: org.jetbrains.dokka.gradle.DokkaTask) {
    outputFormat = "html"
    outputDirectory = "$buildDir/dokka"
}

别忘了同步

#2。构建文档

##2.1 你的代码应该包含 cmets。 请查看以下链接,以获取更多详细信息: https://kotlinlang.org/docs/reference/kotlin-doc.html

##2.2 在 Android Studio 中转到 Gradle-Window 我必须点击Android Studio 3右上角的“Gradle” 单击“Gradle”后,将打开一个窗口。 --> MyProject --> 应用程序 --> 任务 --> DocsByDokka

Gradle-Window in Android Studio

##2.3 生成文档 在 Gradle 窗口中双击 DocsByDokka。

#3。查找文档 ##3.1 转到您的项目文件夹 选择项目而不是 Android 视图。我默认在 Android Studio 的左角找到它。 --> MyProject --> app --> build --> dokka --> app 在那里你会找到index.html。右键单击并选择“在浏览器中打开”。

【讨论】:

    【解决方案2】:

    因此,当我遇到问题时,我正在阅读的示例并没有具体说明将 dokka 依赖项放在哪里。一旦我弄清楚了这些,项目就会编译并构建:

    build.gradle(项目级文件):

    buildscript {
        ext.kotlin_version = '1.2.51'
        ext.kotlin_version = '1.2.30'
        ext.dokka_version = '0.9.17'
        repositories {
            google()
            jcenter()
        }
        dependencies {
            classpath 'com.android.tools.build:gradle:3.1.3'
            classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"
            classpath "org.jetbrains.dokka:dokka-android-gradle-plugin:$dokka_version"
        }
    }
    
    allprojects {
        repositories {
            google()
            jcenter()
        }
    }
    

    build.gradle(模块级文件):

    apply plugin: 'com.android.library'
    apply plugin: 'kotlin-android'
    apply plugin: 'org.jetbrains.dokka-android'
    
    android {
        compileSdkVersion 27
    
        defaultConfig {
            minSdkVersion 23
            targetSdkVersion 27
            versionCode 1
            versionName "1.0"
    
            testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
        }
    ...
    
        dokka {
            outputFormat = 'javadoc'
            outputDirectory = "$buildDir/javadoc"
        }
    }
    

    【讨论】:

      【解决方案3】:

      在 Android 代码上运行 Dokka 时,您需要使用特定于 Android 的插件版本,而不是独立的 Gradle 形式:

      应用插件:'org.jetbrains.dokka-android'

      类路径“org.jetbrains.dokka:dokka-android-gradle-plugin:${versions.dokka}”

      正如 Dokka GitHub 页面的 Android 部分所指出的那样。

      【讨论】:

        【解决方案4】:

        运行安卓时apply plugin: 'org.jetbrains.dokka-android'
        结果是未找到 ID 为“org.jetbrains.dokka-android”的插件。

        所以更改为org.jetbrains.dokka 正在工作

        【讨论】:

        • 错误消息说“org.jetbrains.dokka”没有找到,所以他几乎要使用它。
        【解决方案5】:

        您可以在没有 Dokka 插件的情况下生成 Dokka 文档...使用EasyDokkaPlugin

        在您希望生成文档的每个子模块的build.gradle 末尾添加以下内容:

        apply from: 'https://raw.github.com/Vorlonsoft/EasyDokkaPlugin/master/dokka.gradle'
        

        您现在可以通过 Dokka 文档引擎生成 Javadoc 格式的文档:

        $ gradle dokkaJavadocsJar
        

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 2020-07-23
          • 2016-10-20
          • 1970-01-01
          • 2018-04-08
          • 1970-01-01
          • 2018-03-03
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多