Has*_*san 6 android kotlin android-room dagger-hilt
在我将 Gradle 更新到 6.7.1 并将 Gradle 插件更新到 4.2 后,我决定使用 Room、协程、dagger-hilt 和协程的 Flow 构建一个应用程序。
我将 Libraryies 添加到 dependencyecy,甚至在 build.gradle 文件中添加插件 id 和类路径。
然后我尝试构建我的应用程序。但它因错误而停止
**错误:**
Execution failed for task ':app:checkDebugAarMetadata'.
Run Code Online (Sandbox Code Playgroud)
无法解析配置“:app:debugRuntimeClasspath”的所有文件。找不到 android.arch.lifecycle:common-java8:2.2.0。在以下位置搜索: - https://dl.google.com/dl/android/maven2/android/arch/lifecycle/common-java8/2.2.0/common-java8-2.2.0.pom - https:// /repo.maven.apache.org/maven2/android/arch/lifecycle/common-java8/2.2.0/common-java8-2.2.0.pom 必需:项目:app
这是我的 gradle 文件(build.gradle(project)):
buildscript {
ext.kotlin_version = "1.5.0"
ext {
// App dependencies
appCompatVersion = "1.2.0"
constraintLayoutVersion = "2.0.4"
coroutinesVersion = "1.3.9"
dataStoreVersion = "1.0.0-alpha02"
espressoVersion = "3.3.0"
fragmentVersion = "1.3.0-beta01"
gradleVersion = "4.1.0"
hiltAndroidXVersion = "1.0.0-alpha02"
hiltVersion = "2.28.3-alpha"
junitVersion = "4.13.1"
kotlinVersion = "1.4.10"
ktxVersion = "1.3.2"
lifecycleVersion = "2.2.0"
materialVersion = "1.3.0-alpha03"
navigationVersion = "2.3.1"
roomVersion = "2.2.5"
testExtJunitVersion = "1.1.2"
}
repositories {
google()
mavenCentral()
}
dependencies {
classpath 'com.android.tools.build:gradle:4.1.0'
classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"
classpath "androidx.navigation:navigation-safe-args-gradle-plugin:$navigationVersion"
classpath "com.google.dagger:hilt-android-gradle-plugin:$hiltVersion"
// NOTE: Do not place your application dependencies here; they belong
// in the individual module build.gradle files
}
Run Code Online (Sandbox Code Playgroud)
所有项目{
repositories {
google()
mavenCentral()
}}
Run Code Online (Sandbox Code Playgroud)
任务清理(类型:删除)
{ 删除 rootProject.buildDir}
这是针对 build.gradle(module) 的:
plugins {
id 'com.android.application'
id 'kotlin-android'
id 'kotlin-kapt'
id 'dagger.hilt.android.plugin'
id 'kotlin-parcelize'
id 'androidx.navigation.safeargs.kotlin'
Run Code Online (Sandbox Code Playgroud)
}
android { 编译SdkVersion 30
defaultConfig {
applicationId "com.example.justdoit"
minSdkVersion 21
targetSdkVersion 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'
}
Run Code Online (Sandbox Code Playgroud)
}
依赖项{
implementation "org.jetbrains.kotlin:kotlin-stdlib:$kotlin_version"
implementation 'androidx.core:core-ktx:1.3.2'
implementation 'androidx.appcompat:appcompat:1.2.0'
implementation 'com.google.android.material:material:1.3.0'
implementation 'androidx.constraintlayout:constraintlayout:2.0.4'
testImplementation 'junit:junit:4.+'
androidTestImplementation 'androidx.test.ext:junit:1.1.2'
androidTestImplementation 'androidx.test.espresso:espresso-core:3.3.0'
// Fragment
implementation "androidx.fragment:fragment-ktx:$fragmentVersion"
// Lifecycle + ViewModel & LiveData
implementation "androidx.lifecycle:lifecycle-viewmodel-ktx:$lifecycleVersion"
implementation "androidx.lifecycle:lifecycle-livedata-ktx:$lifecycleVersion"
implementation "android.arch.lifecycle:common-java8:$lifecycleVersion"
// Navigation Component
implementation "androidx.navigation:navigation-fragment-ktx:$navigationVersion"
implementation "androidx.navigation:navigation-ui-ktx:$navigationVersion"
// Room
implementation "androidx.room:room-runtime:$roomVersion"
kapt "androidx.room:room-compiler:$roomVersion"
implementation "androidx.room:room-ktx:$roomVersion"
// Coroutines
implementation "org.jetbrains.kotlinx:kotlinx-coroutines-core:$coroutinesVersion"
implementation "org.jetbrains.kotlinx:kotlinx-coroutines-android:$coroutinesVersion"
// Dagger Hilt
implementation "com.google.dagger:hilt-android:$hiltVersion"
kapt "com.google.dagger:hilt-android-compiler:$hiltVersion"
implementation "androidx.hilt:hilt-lifecycle-viewmodel:$hiltAndroidXVersion"
kapt "androidx.hilt:hilt-compiler:$hiltAndroidXVersion"
// DataStore
implementation "androidx.datastore:datastore-preferences:$dataStoreVersion"
Run Code Online (Sandbox Code Playgroud)
} kapt { CorrectErrorTypes true }
有谁知道为什么会发生这种情况? 感谢您的帮助
小智 5
如果您确实使用 arch 包并且这没有错误,那么版本2.2.0不正确,因为最新版本android.arch.lifecycle:common-java8是1.1.1。
但是,如果您想使用lifecycle-common-java8oflifecycle包,请在 build.gradle(app module) 依赖项中使用 version ,androidx.lifecycle:lifecycle-common-java8而不是使用此版本,因为该版本可用。android.arch.lifecycle:common-java82.2.0
您始终可以通过参考此端点https://maven.google.com/来验证您使用的某些版本的 google 依赖项是否错误且根本无法使用
转到出现错误的包,看看您使用的版本是否确实正确。
| 归档时间: |
|
| 查看次数: |
3327 次 |
| 最近记录: |