如何在 java-library 中包含 Room 持久性库?
How to include Room persistence library in java-library?
我有三个模块
应用模块
plugins {
id 'com.android.application'
id 'kotlin-android'
}
//..
域模块
plugins {
id 'java-library'
id 'kotlin'
}
//..
数据模块
plugins {
id 'java-library'
id 'kotlin'
id 'kotlin-kapt'
}
//..
我正在尝试在数据模块中添加房间库
//..
java {
sourceCompatibility JavaVersion.VERSION_1_8
targetCompatibility JavaVersion.VERSION_1_8
}
dependencies {
implementation project(path: ':domain')
//coroutine
implementation "org.jetbrains.kotlinx:kotlinx-coroutines-core:$kotlinx_coroutine_version"
//room
implementation "androidx.room:room-runtime:$room_version"
annotationProcessor "androidx.room:room-compiler:$room_version"
kapt("androidx.room:room-compiler:$room_version")
implementation("androidx.room:room-ktx:$room_version")
}
但是我收到这个错误
Could not resolve androidx.room:room-runtime:2.3.0.
我已经有 google() 项目模块
allprojects {
repositories {
google()
mavenCentral()
maven { url 'https://jitpack.io' }
}
}
但它一直告诉我它不识别房间图书馆!
您需要将 jcenter()
添加到存储库块 -
repositories {
google()
jcenter()
mavenCentral()
maven { url 'https://jitpack.io' }
}
Data Module
应该是 Android Library
类型,因为我使用的是 Room 持久性库,它不能在 java 库中使用,因为它依赖于 android 平台 api .
我有三个模块
应用模块
plugins {
id 'com.android.application'
id 'kotlin-android'
}
//..
域模块
plugins {
id 'java-library'
id 'kotlin'
}
//..
数据模块
plugins {
id 'java-library'
id 'kotlin'
id 'kotlin-kapt'
}
//..
我正在尝试在数据模块中添加房间库
//..
java {
sourceCompatibility JavaVersion.VERSION_1_8
targetCompatibility JavaVersion.VERSION_1_8
}
dependencies {
implementation project(path: ':domain')
//coroutine
implementation "org.jetbrains.kotlinx:kotlinx-coroutines-core:$kotlinx_coroutine_version"
//room
implementation "androidx.room:room-runtime:$room_version"
annotationProcessor "androidx.room:room-compiler:$room_version"
kapt("androidx.room:room-compiler:$room_version")
implementation("androidx.room:room-ktx:$room_version")
}
但是我收到这个错误
Could not resolve androidx.room:room-runtime:2.3.0.
我已经有 google() 项目模块
allprojects {
repositories {
google()
mavenCentral()
maven { url 'https://jitpack.io' }
}
}
但它一直告诉我它不识别房间图书馆!
您需要将 jcenter()
添加到存储库块 -
repositories {
google()
jcenter()
mavenCentral()
maven { url 'https://jitpack.io' }
}
Data Module
应该是 Android Library
类型,因为我使用的是 Room 持久性库,它不能在 java 库中使用,因为它依赖于 android 平台 api .