title: apt dependency scope in Android gradle - what is it used for?
body: <p>What is the apt dependency scope in android gradle files i see sometimes ?</p>
  
  <p>An example looks like this?</p>
  
  <pre><code>apply plugin: 'com.android.application'
  apply plugin: 'com.neenbedankt.android-apt'
  android {
      compileSdkVersion 20
      buildToolsVersion '20.0.0'
      defaultConfig {
          applicationId "org.ligboy.test.card.module1"
          minSdkVersion 14
          targetSdkVersion 20
          versionCode 1
          versionName "1.0"
      }
      buildTypes {
          release {
              runProguard false
              proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
          }
      }
  }
  
  final DAGGER_VERSION = '2.0.2'
  
  dependencies {  
      compile "com.google.dagger:dagger:${DAGGER_VERSION}"
      apt "com.google.dagger:dagger-compiler:${DAGGER_VERSION}"//what is this scope 
      provided 'org.glassfish:javax.annotation:10.0-b28'
  }
  </code></pre>
  
  <p>and in the top level build.gradle file it has this global dependency:</p>
  
  <pre><code>buildscript { 
  dependencies {
          classpath 'com.android.tools.build:gradle:1.3.0'
          classpath 'com.neenbedankt.gradle.plugins:android-apt:1.4'
      }
  }
  </code></pre>
  
  <p>Notice in the dependencies section there is a apt scope ? i only know of compile, package and provided scope. compile
  includes the dependency at compile time and in your package, provided says only include the library at compile time and discard it at
  package time so its not included in final build. and Package is the reverse, it includes the dependency in the package and not at compile time.
  But what is apt dependency scope which we obviously need the  com.neenbedankt.android-apt for it to work so i know its android based.</p>
  
  <p>update:
  why cant i use <strong>provided</strong> dependency scope instead of <strong>apt</strong> scope ? How do they differ ?</p>
  
  <p>i created a tutorial on <a href="http://j2emanue.blogspot.ca/2016/01/gradle-dependency-scopes-lesson-2.html">dagger dependency scopes</a> for those who need more info. </p>