Не удалось установить неизвестное свойство nav_version для объекта типа org.gradle.api.internal.artifacts.dsl.dependencies.DefaultDependencyHandler - PullRequest
0 голосов
/ 16 февраля 2020

Я пытался добавить Навигационные зависимости, чтобы использовать График навигации в моем проекте, и android studio выдала эту ошибку.

Это файл Gradle моего проекта:

// Top-level build file where you can add configuration options common to all sub-projects/modules.

buildscript {
    ext.kotlin_version = '1.3.50'
    repositories {
        google()
        jcenter()
        nav_version = "2.3.0-alpha01" //extra property, used like variables
    }
    dependencies {
        classpath 'com.android.tools.build:gradle:3.5.3'
        classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"
        // NOTE: Do not place your application dependencies here; they belong
        // in the individual module build.gradle files

        classpath "androidx.navigation:navigation-safe-args-gradle-plugin:$nav_version"
    }
}

allprojects {
    repositories {
        google()
        jcenter()

    }
}

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

Как вы можете видеть, я добавил как зависимость $ nav_version, так и переменную nav_version. Но android studio выдает ошибку «Не удалось установить неизвестное свойство nav_version» для объекта типа org.gradle.api.internal.artifacts.dsl.dependencies.DefaultDependencyHandler ». Интересно, это как-то связано с версией Gradle или моей версией Kotlin. Я пытался очистить и восстановить свой проект, но он не сработал. Мне было интересно, сталкивался ли кто-нибудь с чем-то похожим.

1 Ответ

1 голос
/ 16 февраля 2020

Он должен быть частью уровня приложения build.gradle.

Что-то вроде

dependencies {
  def nav_version = "2.3.0-alpha01"

  // Kotlin
  implementation "androidx.navigation:navigation-fragment-ktx:$nav_version"
  implementation "androidx.navigation:navigation-ui-ktx:$nav_version"

  // Dynamic Feature Module Support
  implementation "androidx.navigation:navigation-dynamic-features-fragment:$nav_version"

  // Testing Navigation
  androidTestImplementation "androidx.navigation:navigation-testing:$nav_version"
}

и верхнего уровня / уровня проекта

buildscript {
    repositories {
        google()
    }
    dependencies {
        def nav_version = "2.3.0-alpha01"
        classpath "androidx.navigation:navigation-safe-args-gradle-plugin:$nav_version"
    }
}

Или разместить его как $ {nav_version}

classpath "androidx.navigation:navigation-safe-args-gradle-plugin:${nav_version}"

Или

buildScript {
  ext {
    nav_version = "2.3.0-alpha01"
    kotlin_version = "1.3.50"
  }

    dependencies {
            classpath 'com.android.tools.build:gradle:3.5.3'
            classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:${kotlin_version}"
            // NOTE: Do not place your application dependencies here; they belong
            // in the individual module build.gradle files

            classpath "androidx.navigation:navigation-safe-args-gradle-plugin:${nav_version}"
    }
}

Ссылка https://developer.android.com/guide/navigation/navigation-getting-started

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...