当前位置: 首页 > 知识库问答 >
问题:

喷气背包组合与剑柄冲突

马梓
2023-03-14

几天来,我一直试图成功地构建我正在进行的项目(使用Jetpack Compose),但当我更新gradle构建插件和其他一些依赖项时,我无法正确运行该项目。有一些gradle版本与dagger-hilt依赖项冲突,我不知道如何修复它。我正在使用Android Studio的金丝雀测试版。

这里还有我所有的gradle构建文件:

Gradle构建模块应用程序:

plugins {
    id 'com.android.application'
    id 'kotlin-android'
    id 'kotlin-kapt'
    id 'kotlin-parcelize'
    id 'dagger.hilt.android.plugin'
}

android {
    compileSdk 30
    buildToolsVersion "30.0.3"

    defaultConfig {
        applicationId "com.example.mycomposedemo"
        minSdk 21
        targetSdk 30
        versionCode 1
        versionName "1.0"

        testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
    }

    buildTypes {
        release {
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
        }
    }
    compileOptions {
        sourceCompatibility JavaVersion.VERSION_1_8
        targetCompatibility JavaVersion.VERSION_1_8
    }
    kotlinOptions {
        jvmTarget = '1.8'
        useIR = true
    }
    buildFeatures {
        compose true
    }
    composeOptions {
        kotlinCompilerExtensionVersion "1.0.0-beta07"
        kotlinCompilerVersion '1.5.0'
    }
}

dependencies {
    implementation 'androidx.core:core-ktx:1.5.10'
    implementation 'androidx.appcompat:appcompat:1.3.0'
    implementation 'com.google.android.material:material:1.3.0'

    implementation "androidx.compose.ui:ui:1.0.0-beta08"
    implementation "androidx.compose.material:material:1.0.0-beta08"
    implementation "androidx.compose.ui:ui-tooling:1.0.0-beta08"
    implementation "androidx.navigation:navigation-compose:2.4.0-alpha02"
    implementation 'androidx.lifecycle:lifecycle-runtime-ktx:2.3.1'
    implementation 'androidx.activity:activity-compose:1.3.0-beta01'
    implementation "androidx.compose.runtime:runtime-livedata:1.0.0-beta08"

    implementation 'androidx.lifecycle:lifecycle-viewmodel-compose:1.0.0-alpha06'
    implementation "androidx.compose.animation:animation:1.0.0-beta08"

    testImplementation 'junit:junit:4.13.2'
    androidTestImplementation 'androidx.test.ext:junit:1.1.2'
    androidTestImplementation 'androidx.test.espresso:espresso-core:3.3.0'
    androidTestImplementation "androidx.compose.ui:ui-test-junit4:1.0.0-beta08"

    // Room components
    implementation "androidx.room:room-runtime:2.3.0"
    kapt "androidx.room:room-compiler:2.3.0"
    implementation "androidx.room:room-ktx:2.3.0"
    androidTestImplementation "androidx.room:room-testing:2.3.0"

    // Lifecycle
    implementation "androidx.lifecycle:lifecycle-extensions:2.2.0"
    implementation "androidx.lifecycle:lifecycle-viewmodel-ktx:2.3.1"
    implementation "androidx.lifecycle:lifecycle-livedata-ktx:2.3.1"

    // Kotlin components
    api "org.jetbrains.kotlinx:kotlinx-coroutines-core:1.5.0-native-mt"
    api "org.jetbrains.kotlinx:kotlinx-coroutines-android:1.5.0-native-mt"

    // Dagger - Hilt
    implementation "com.google.dagger:hilt-android:2.35.1"
    kapt "com.google.dagger:hilt-android-compiler:2.35.1"

    // Accompanist System UI Controller
    implementation "com.google.accompanist:accompanist-systemuicontroller:0.8.1"
}

Gradle构建(项目层级):

// Top-level build file where you can add configuration options common to all sub-projects/modules.
buildscript {
    repositories {
        google()
        mavenCentral()
    }
    dependencies {
        classpath 'com.android.tools.build:gradle:7.1.0-alpha01'
        classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:1.5.10"
        classpath "com.google.dagger:hilt-android-gradle-plugin:2.35.1"

        // NOTE: Do not place your application dependencies here; they belong
        // in the individual module build.gradle files
    }
}

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

错误:

“无效通信。Android建筑应用程序编程接口。扩大AndroidComponentExtension$DefaultImpls。androidTests$default(com.android.build.api.extension.AndroidComponentsExtension,com.android.build.api.extension.VariantSelector,kotlin.jvm.functions.Function1,int,java.lang.Object)'

>

  • 尝试:使用--info或--debug选项运行以获得更多日志输出。使用--scan运行以获得完整的洞察力。

    错误2:

    找不到方法“”void com.Android建筑应用程序编程接口。扩大AndroidComponentExtension$DefaultImpls。androidTests$default(com.android.build.api.extension.AndroidComponentsExtension,com.android.build.api.extension.VariantSelector,kotlin.jvm.functions.Function1,int,java.lang.Object)“”无效com.Android建筑应用程序编程接口。扩大AndroidComponentExtension$DefaultImpls。androidTests$default(com.android.build.api.extension.AndroidComponentsExtension,com.android.build.api.extension.VariantSelector,kotlin.jvm.functions.Function1,int,java.lang.Object)'

    Gradle的依赖缓存可能损坏(有时会在网络连接超时后发生)。

    重新下载依赖项和同步项目(需要网络)Gradle构建进程(守护进程)的状态可能已损坏。停止所有Gradle守护进程可以解决这个问题。

    停止Gradle生成过程(需要重新启动)您的项目可能正在使用与项目中的其他插件或项目所请求的Gradle版本不兼容的第三方插件。

    在Gradle进程损坏的情况下,您也可以尝试关闭IDE,然后杀死所有Java进程。

  • 共有1个答案

    海鸣
    2023-03-14

    Hilt Gradle插件2.35存在问题。x和Android Gradle插件7.1。0-alpha01

    这应该通过使用匕首释放此提交来修复2.36

     类似资料:
    • 我想知道什么是喷气背包中的脚手架组成一个BottomAppBar示例任何人都可以帮我

    • 我创建了一个项目,并添加了插件和dependency,我还对其进行了测试,结果很好。但当我重构项目以使用并启用jetifier工具项目不会构建,我会遇到多个错误,如: 转换文件“crashlytics-2.9.2.aar”以匹配属性{artifactType=jetitied-aar}失败 似乎< code>jetifier工具和< code>Crashlytics依赖项有问题。有没有办法关闭单个

    • 可以在Jetpack Compose中进行权重吗?例如,我想以这样一种方式设置它,即一个项目被加权为布局的1/3,而另一个占剩余的2/3。 在XML/ViewGroup样式中,可以使用LinearLayouts和ConstraintLayouts来实现这一点。然而,令我沮丧的是,使用Jetpack Compose似乎是不可能的。 示例: 在ConstraintLayout中,这是按如下方式完成的:

    • 我想根据条件更改我的开始导航片段。我的起始片段可以是片段1或片段2。有没有办法实现它?

    • 我有一个包含多个< code>LazyRow的< code>LazyColumn。在旧术语中,嵌套RecyclerView。 我的问题是,当移动到一个新的可组合(不同的选项卡)时,不会恢复滚动状态。但是内部s恢复它们的状态。 例如,打开主屏幕,滚动到底部,然后滚动结束,然后打开不同的选项卡并再次返回主选项卡。 的产品进行评级 如何恢复滚动状态?

    • 如何从下方显示惰性列?默认情况下,它显示上面的列表