Advertisement
Guest User

Android build.gradle

a guest
Aug 20th, 2013
1,705
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 2.33 KB | None | 0 0
  1. import groovy.io.FileType
  2. buildscript {
  3.     repositories {
  4.         mavenCentral()
  5.     }
  6.     dependencies {
  7.         classpath 'com.android.tools.build:gradle:0.5.+'
  8.         classpath 'com.squareup.gradle:gradle-android-test-plugin:0.9.+'
  9.     }
  10. }
  11. apply plugin: 'android'
  12. apply plugin: 'android-test'
  13.  
  14. repositories {
  15.     mavenCentral()
  16. }
  17.  
  18. android {
  19.     compileSdkVersion 18
  20.     buildToolsVersion "18.0.0"
  21.  
  22.     defaultConfig {
  23.         minSdkVersion 14
  24.         targetSdkVersion 16
  25.     }
  26.     sourceSets {
  27.         test {
  28.             java {
  29.                 include "/src/test/java"
  30.             }
  31.         }
  32.     }
  33. }
  34.  
  35. ext.androidAnnotationsVersion = '2.7.1'
  36. ext.daggerVersion = '1.1.0'
  37. configurations {
  38.     apt
  39. }
  40.  
  41. dependencies {
  42.     apt "com.googlecode.androidannotations:androidannotations:${androidAnnotationsVersion}"
  43.     apt "com.squareup.dagger:dagger-compiler:${daggerVersion}"
  44.     compile 'com.android.support:support-v4:13.0.+'
  45.     compile 'org.codehaus.jackson:jackson-mapper-asl:1.9.+'
  46.     compile "com.googlecode.androidannotations:androidannotations-api:${androidAnnotationsVersion}"
  47.     compile "com.squareup.dagger:dagger:${daggerVersion}"
  48.     testCompile 'junit:junit:4.10'
  49.     testCompile 'org.robolectric:robolectric:2.1.+'
  50.     testCompile 'com.squareup:fest-android:1.0.+'
  51. }
  52.  
  53. def aptOutput
  54. afterEvaluate { project ->
  55.     android.applicationVariants.each { variant ->
  56.         aptOutput = file("${project.buildDir}/source/r/${variant.dirName}")
  57.         println "****************************"
  58.         println "variant: ${variant.name}"
  59.         println "manifest:  ${variant.processResources.manifestFile}"
  60.         println "aptOutput:  ${aptOutput}"
  61.         println "****************************"
  62.  
  63.         variant.javaCompile.doFirst {
  64.             println "*** compile doFirst ${variant.name}"
  65.             aptOutput.mkdirs()
  66.  
  67.             aptOutput.eachFileRecurse FileType.FILES, {
  68.                 if (it.name.equals('R.java')) {
  69.                     return
  70.                 }
  71.                 it.delete()
  72.             }
  73.  
  74.             variant.javaCompile.options.compilerArgs += [
  75.                     '-processorpath', configurations.apt.getAsPath(),
  76.                     '-AandroidManifestFile=' + variant.processResources.manifestFile,
  77.                     '-s', aptOutput
  78.             ]
  79.         }
  80.     }
  81. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement