我最近看到了Google I/O宣布的新功能,即Room Persistence Library,可用于在Android上使用Sqlite数据库。我一直在查看官方文档,但我没有找到应该导入到我的Android项目gradle文件中的依赖关系。有人能帮帮我吗?
我最近看到了Google I/O宣布的新功能,即Room Persistence Library,可用于在Android上使用Sqlite数据库。我一直在查看官方文档,但我没有找到应该导入到我的Android项目gradle文件中的依赖关系。有人能帮帮我吗?
在这个示例代码实验室中,可以找到新架构组件的依赖关系。
根目录:
allprojects {
repositories {
jcenter()
maven {
url "https://maven.google.com"
}
}
对于房间:
implementation 'android.arch.persistence.room:runtime:1.0.0-alpha1'
annotationProcessor 'android.arch.persistence.room:compiler:1.0.0-alpha1'
对于生命周期依赖:
implementation 'android.arch.lifecycle:extensions:1.0.0-alpha1'
annotationProcessor 'android.arch.lifecycle:compiler:1.0.0-alpha1'
将Rxjava2对象作为查询结果添加:
implementation 'android.arch.persistence.room:rxjava2:1.0.0-alpha1'
测试迁移:
testImplementation'android.arch.persistence.room:testing:1.0.0-alpha1'
build.gradle
中,您需要添加Google的Maven存储库:allprojects {
repositories {
jcenter()
maven {
// For Room Persistence Library
url "https://maven.google.com"
}
}
}
然后在模块的build.gradle
文件中添加如下内容:
compile 'android.arch.persistence.room:runtime:1.0.0-alpha1'
annotationProcessor 'android.arch.persistence.room:compiler:1.0.0-alpha1'
compile 'android.arch.lifecycle:extensions:1.0.0-alpha1'
annotationProcessor 'android.arch.lifecycle:compiler:1.0.0-alpha1'
compile 'android.arch.persistence.room:rxjava2:1.0.0-alpha1'
testCompile'android.arch.persistence.room:testing:1.0.0-alpha1'
如果您想使用RxJava2 Publisher
和Flowable
对象作为查询结果,请添加以下内容
compile 'android.arch.persistence.room:rxjava2:1.0.0-alpha1'
最后,还需将此依赖项添加到测试迁移中。
testCompile'android.arch.persistence.room:testing:1.0.0-alpha1'
更新:这些库仍被标记为Alpha1,因此我想版本号将会很快更新,也许使用已经更新,根据文档中定义的,您可以使用以下依赖项使用1.0.+
直到有一个最终版本是个好主意room 1.1.1
:
dependencies {
def room_version = "1.1.1"
implementation "android.arch.persistence.room:runtime:$room_version"
annotationProcessor "android.arch.persistence.room:compiler:$room_version" // use kapt for Kotlin
// optional - RxJava support for Room
implementation "android.arch.persistence.room:rxjava2:$room_version"
// optional - Guava support for Room, including Optional and ListenableFuture
implementation "android.arch.persistence.room:guava:$room_version"
// Test helpers
testImplementation "android.arch.persistence.room:testing:$room_version"
}
这将启用访问 Google 存储库。
allprojects {
repositories {
jcenter()
google()
}
}
接下来打开 build.gradle(Module:app) 文件,并将以下两行添加到现有依赖关系中。
对于Java
def room_version = "1.1.0"
implementation "android.arch.persistence.room:runtime:$room_version"
annotationProcessor "android.arch.persistence.room:compiler:$room_version"
对于Kotlin
将此行粘贴到依赖项或Android范围之外的顶部,即应用Kotlin插件的位置。
apply plugin: 'kotlin-kapt'
def room_version = "1.1.0"
implementation "android.arch.persistence.room:runtime:$room_version"
kapt "android.arch.persistence.room:compiler:$room_version"
要保持与最新的依赖版本同步,请访问MVN仓库中的Room
针对androidX和kapt
def room_version = "2.2.5"
implementation "androidx.room:room-runtime:$room_version"
implementation "androidx.room:room-rxjava2:$room_version"
kapt "androidx.room:room-compiler:$room_version"
试试这个来编译 Room 持久性库
implementation 'android.arch.persistence.room:runtime:1.1.1';
annotationProcessor 'android.arch.persistence.room:compiler:1.1.1';
allprojects {
repositories {
jcenter()
maven {
url "https://maven.google.com"
}
}
添加Google Maven存储库 默认情况下,Android Studio项目未配置以访问此存储库。
要将其添加到您的项目中,请打开项目的build.gradle文件(而不是您的应用程序或模块的文件),并按照下面所示添加突出显示的行:
allprojects {
repositories {
jcenter()
maven { url 'https://maven.google.com' }
}
}
添加架构组件
打开应用或模块的build.gradle文件,并将需要作为依赖项的构件添加进去:
为了使用生命周期(Lifecycles)、LiveData和ViewModel,添加如下依赖项:
implementation "android.arch.lifecycle:runtime:1.0.0-alpha1"
implementation "android.arch.lifecycle:extensions:1.0.0-alpha1"
annotationProcessor "android.arch.lifecycle:compiler:1.0.0-alpha1"
对于Room,添加:
implementation "android.arch.persistence.room:runtime:1.0.0-alpha1"
annotationProcessor "android.arch.persistence.room:compiler:1.0.0-alpha1"
* Add these in project level gradle
allprojects {
repositories {
jcenter()
maven { url 'https://maven.google.com' }
}
}
ext {
buildToolsVersion = "25.0.2"
supportLibVersion = "25.3.1"
archRoomVersion = "1.0.0-alpha1"
}
* Add these in module level gradle dependencies
dependencies {
compile 'android.arch.persistence.room:runtime:' + rootProject.archRoomVersion;
annotationProcessor 'android.arch.persistence.room:compiler:' + rootProject.archRoomVersion;
}
本教程适用于最新版本的Android Studio 3.1。
在Gradle Scripts文件夹中, 在Project build.gradle文件中添加以下内容:
allprojects {
repositories {
...
maven { url 'https://maven.google.com' }
}
}
dependencies {
...
implementation "android.arch.persistence.room:runtime:1.0.0"
annotationProcessor "android.arch.persistence.room:compiler:1.0.0"
}
来源:https://developer.android.com/topic/libraries/architecture/adding-components.html
在 Android 应用程序中使用架构组件时,您可以添加以下组件:
当前(2018年02月14日)版本为:
compile 'android.arch.persistence.room:rxjava2:1.1.0-alpha1'
compile 'android.arch.persistence.room:runtime:1.1.0-alpha1'
annotationProcessor 'android.arch.persistence.room:compiler:1.1.0-alpha1'
compile 'android.arch.lifecycle:extensions:1.1.0'
annotationProcessor 'android.arch.lifecycle:compiler:1.1.0'
打开 你的项目(而非你的应用或模块)的build.gradle
文件,添加以下内容:
allprojects {
repositories {
google()
jcenter()
}
}
build.gradle
文件,并将所需的构件添加为依赖项:dependencies {
implementation "android.arch.persistence.room:runtime:1.0.0"
annotationProcessor "android.arch.persistence.room:compiler:1.0.0"
}
参考资料:Android 添加组件