I prefer to use central repository for dependencies management. So for gson 2.3
dependency you should add to build.gradle
file:
Specify that you want to use maven central repository for your dependency
repositories {jcenter()}
Add compile
dependency to gson 2.6.2
dependencies {compile 'com.google.code.gson:gson:2.6.2'}
Android Studio as well as your CI server should easily build your project now. And you can continue app development.
I prefer to use central repository for dependencies management because:
- easier scope management - some libraries are only for testing, some should be included to apk and some are part of running environment (like android.jar itself)
- easier transitive dependencies management - it is quite hard to collect libraries dependencies and if you use "jar-with-dependencies" you could get error "class already added" during dexing
- lighter repository and easier dependency upgrade
Examples:
- Robolectric jar should be used for unit testing only and shouldn't be part of apk itself
- Repository is clean from different folders with jars, checkout takes much less. No needs to download and replace old jars with new jars
I should notice:
- Not many libraries are in maven central and you should make some effort to use them such way in your project
- You could much easier get to "class already added" error during dexing with central repository approach
- You can mix usage of dependencies from central repository and from lib folder, but I prefer to use only one way for simplicity
与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…