How to import Room Persistence Library to an Android project
It's possible to find the dependencies on the example codelab for the new architecture components.
Root :
allprojects {repositories { jcenter() maven { url "https://maven.google.com" }}
For Room:
implementation 'android.arch.persistence.room:runtime:1.0.0-alpha1' annotationProcessor 'android.arch.persistence.room:compiler:1.0.0-alpha1'
For Lifecycle dependencies:
implementation 'android.arch.lifecycle:extensions:1.0.0-alpha1' annotationProcessor 'android.arch.lifecycle:compiler:1.0.0-alpha1'
Adding Rxjava2 objects as result for our queries:
implementation 'android.arch.persistence.room:rxjava2:1.0.0-alpha1'
Test migrations:
testImplementation'android.arch.persistence.room:testing:1.0.0-alpha1'
On your project root build.gradle
you have to add Google's maven repository:
allprojects { repositories { jcenter() maven { // For Room Persistence Library url "https://maven.google.com" } }}
And then on the build.gradle
of the Module you should add:
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'
Add this if you want to use RxJava2 Publisher
and Flowable
objects as a result of your queries
compile 'android.arch.persistence.room:rxjava2:1.0.0-alpha1'
And finally add also this dependency to test migrations
testCompile'android.arch.persistence.room:testing:1.0.0-alpha1'
Update: The libraries are still marked as Alpha1 so I guess the version number will be updated soon, maybe using have been updated and as definded on the documentation you can use 1.0.+
until there is a final version could be a good idearoom 1.1.1
using this dependencies:
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"}
open build.gradle(Project: projectName) and add this lines if it doesn't exist.
This enables access to google repository
allprojects {repositories { jcenter() google() }}
next open build.gradle(Module:app) and add this two lines to existing dependencies
For Java
def room_version = "1.1.0"implementation "android.arch.persistence.room:runtime:$room_version"annotationProcessor "android.arch.persistence.room:compiler:$room_version"
For Kotlin
paste this line outside of the dependencies or android scope at the top where kotlin plugins are applied
apply plugin: 'kotlin-kapt'
add this lines to dependencies
def room_version = "1.1.0"implementation "android.arch.persistence.room:runtime:$room_version"kapt "android.arch.persistence.room:compiler:$room_version"
to keep yourself updated with the recent dependencies version visit mvn repository for room