title: DexArchiveMergerException: Unable to merge dex - Android Studio 3.0 Stable
body: <p>I made:</p>
  
  <ul>
  <li>In "Settings"->"Android SDK"->"SDK Tools" <code>Google Play services</code> is checked and installed v.46 </li>
  <li>Removed folder <code>/.gradle</code> </li>
  <li>"Clean Project"</li>
  <li>"Rebuild Project"</li>
  </ul>
  
  <p>Error is:</p>
  
  <pre><code>Error:Execution failed for task ':app:transformDexArchiveWithExternalLibsDexMergerForDebug'.
  &gt; java.lang.RuntimeException: com.android.builder.dexing.DexArchiveMergerException: Unable to merge dex
  </code></pre>
  
  <p>Here is output of command <code>gradlew -q app:dependencies&gt;&gt;app_dependencies.txt</code></p>
  
  <p>After run of the command
  <code>gradle :app:assembleDebug --stacktrace</code>
  I get this:</p>
  
  <pre><code>&gt; Error:Execution failed for task ':app:transformDexArchiveWithExternalLibsDexMergerForDebug'.
  &gt; java.lang.RuntimeException: com.android.builder.dexing.DexArchiveMergerException: Unable to merge dex
  
   After run of the command
  `gradle :app:assembleDebug --stacktrace` 
  Error is:
  
  :app:javaPreCompileDebug UP-TO-DATE
  :app:compileDebugJavaWithJavacAn exception has occurred in the compiler (1.8.0_152-release). Please file a bug against the Java compiler via the Java bug reporting page (http://bugreport.java.com) after checking the Bug Database (http://bugs.java.com) for duplicates. Include your program and the following diagnostic in your report. Thank you.
  java.lang.IllegalStateException: endPosTable already set
      at com.sun.tools.javac.util.DiagnosticSource.setEndPosTable(DiagnosticSource.java:136)
      at com.sun.tools.javac.util.Log.setEndPosTable(Log.java:350)
      at com.sun.tools.javac.main.JavaCompiler.parse(JavaCompiler.java:667)
      at com.sun.tools.javac.main.JavaCompiler.parseFiles(JavaCompiler.java:950)
      at com.sun.tools.javac.processing.JavacProcessingEnvironment$Round.&lt;init&gt;(JavacProcessingEnvironment.java:892)
      at com.sun.tools.javac.processing.JavacProcessingEnvironment$Round.next(JavacProcessingEnvironment.java:921)
      at com.sun.tools.javac.processing.JavacProcessingEnvironment.doProcessing(JavacProcessingEnvironment.java:1187)
      at com.sun.tools.javac.main.JavaCompiler.processAnnotations(JavaCompiler.java:1170)
      at com.sun.tools.javac.main.JavaCompiler.compile(JavaCompiler.java:856)
      at com.sun.tools.javac.main.Main.compile(Main.java:523)
      at com.sun.tools.javac.api.JavacTaskImpl.doCall(JavacTaskImpl.java:129)
      at com.sun.tools.javac.api.JavacTaskImpl.call(JavacTaskImpl.java:138)
      at org.gradle.api.internal.tasks.compile.JdkJavaCompiler.execute(JdkJavaCompiler.java:49)
      at org.gradle.api.internal.tasks.compile.JdkJavaCompiler.execute(JdkJavaCompiler.java:36)
      at org.gradle.api.internal.tasks.compile.NormalizingJavaCompiler.delegateAndHandleErrors(NormalizingJavaCompiler.java:99)
      at org.gradle.api.internal.tasks.compile.NormalizingJavaCompiler.execute(NormalizingJavaCompiler.java:52)
      at org.gradle.api.internal.tasks.compile.NormalizingJavaCompiler.execute(NormalizingJavaCompiler.java:37)
      at org.gradle.api.internal.tasks.compile.CleaningJavaCompilerSupport.execute(CleaningJavaCompilerSupport.java:35)
      at org.gradle.api.internal.tasks.compile.CleaningJavaCompilerSupport.execute(CleaningJavaCompilerSupport.java:25)
      at org.gradle.api.internal.tasks.compile.incremental.IncrementalCompilationFinalizer.execute(IncrementalCompilationFinalizer.java:39)
      at org.gradle.api.internal.tasks.compile.incremental.IncrementalCompilationFinalizer.execute(IncrementalCompilationFinalizer.java:24)
      at org.gradle.api.tasks.compile.JavaCompile.performCompilation(JavaCompile.java:198)
      at org.gradle.api.tasks.compile.JavaCompile.compile(JavaCompile.java:129)
      at com.android.build.gradle.tasks.factory.AndroidJavaCompile.compile(AndroidJavaCompile.java:95)
      at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
      at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
      at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
      at java.lang.reflect.Method.invoke(Method.java:498)
      at org.gradle.internal.reflect.JavaMethod.invoke(JavaMethod.java:73)
      at org.gradle.api.internal.project.taskfactory.DefaultTaskClassInfoStore$IncrementalTaskAction.doExecute(DefaultTaskClassInfoStore.java:173)
      at org.gradle.api.internal.project.taskfactory.DefaultTaskClassInfoStore$StandardTaskAction.execute(DefaultTaskClassInfoStore.java:134)
      at org.gradle.api.internal.project.taskfactory.DefaultTaskClassInfoStore$StandardTaskAction.execute(DefaultTaskClassInfoStore.java:121)
      at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter$1.run(ExecuteActionsTaskExecuter.java:122)
      at org.gradle.internal.progress.DefaultBuildOperationExecutor$RunnableBuildOperationWorker.execute(DefaultBuildOperationExecutor.java:336)
      at org.gradle.internal.progress.DefaultBuildOperationExecutor$RunnableBuildOperationWorker.execute(DefaultBuildOperationExecutor.java:328)
      at org.gradle.internal.progress.DefaultBuildOperationExecutor.execute(DefaultBuildOperationExecutor.java:197)
      at org.gradle.internal.progress.DefaultBuildOperationExecutor.run(DefaultBuildOperationExecutor.java:107)
      at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.executeAction(ExecuteActionsTaskExecuter.java:111)
      at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.executeActions(ExecuteActionsTaskExecuter.java:92)
      at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.execute(ExecuteActionsTaskExecuter.java:70)
      at org.gradle.api.internal.tasks.execution.SkipUpToDateTaskExecuter.execute(SkipUpToDateTaskExecuter.java:63)
      at org.gradle.api.internal.tasks.execution.ResolveTaskOutputCachingStateExecuter.execute(ResolveTaskOutputCachingStateExecuter.java:54)
      at org.gradle.api.internal.tasks.execution.ValidatingTaskExecuter.execute(ValidatingTaskExecuter.java:58)
      at org.gradle.api.internal.tasks.execution.SkipEmptySourceFilesTaskExecuter.execute(SkipEmptySourceFilesTaskExecuter.java:88)
      at org.gradle.api.internal.tasks.execution.ResolveTaskArtifactStateTaskExecuter.execute(ResolveTaskArtifactStateTaskExecuter.java:52)
      at org.gradle.api.internal.tasks.execution.SkipTaskWithNoActionsExecuter.execute(SkipTaskWithNoActionsExecuter.java:52)
      at org.gradle.api.internal.tasks.execution.SkipOnlyIfTaskExecuter.execute(SkipOnlyIfTaskExecuter.java:54)
      at org.gradle.api.internal.tasks.execution.ExecuteAtMostOnceTaskExecuter.execute(ExecuteAtMostOnceTaskExecuter.java:43)
      at org.gradle.api.internal.tasks.execution.CatchExceptionTaskExecuter.execute(CatchExceptionTaskExecuter.java:34)
      at org.gradle.execution.taskgraph.DefaultTaskGraphExecuter$EventFiringTaskWorker$1.run(DefaultTaskGraphExecuter.java:248)
      at org.gradle.internal.progress.DefaultBuildOperationExecutor$RunnableBuildOperationWorker.execute(DefaultBuildOperationExecutor.java:336)
      at org.gradle.internal.progress.DefaultBuildOperationExecutor$RunnableBuildOperationWorker.execute(DefaultBuildOperationExecutor.java:328)
      at org.gradle.internal.progress.DefaultBuildOperationExecutor.execute(DefaultBuildOperationExecutor.java:197)
      at org.gradle.internal.progress.DefaultBuildOperationExecutor.run(DefaultBuildOperationExecutor.java:107)
      at org.gradle.execution.taskgraph.DefaultTaskGraphExecuter$EventFiringTaskWorker.execute(DefaultTaskGraphExecuter.java:241)
      at org.gradle.execution.taskgraph.DefaultTaskGraphExecuter$EventFiringTaskWorker.execute(DefaultTaskGraphExecuter.java:230)
      at org.gradle.execution.taskgraph.DefaultTaskPlanExecutor$TaskExecutorWorker.processTask(DefaultTaskPlanExecutor.java:124)
      at org.gradle.execution.taskgraph.DefaultTaskPlanExecutor$TaskExecutorWorker.access$200(DefaultTaskPlanExecutor.java:80)
      at org.gradle.execution.taskgraph.DefaultTaskPlanExecutor$TaskExecutorWorker$1.execute(DefaultTaskPlanExecutor.java:105)
      at org.gradle.execution.taskgraph.DefaultTaskPlanExecutor$TaskExecutorWorker$1.execute(DefaultTaskPlanExecutor.java:99)
      at org.gradle.execution.taskgraph.DefaultTaskExecutionPlan.execute(DefaultTaskExecutionPlan.java:625)
      at org.gradle.execution.taskgraph.DefaultTaskExecutionPlan.executeWithTask(DefaultTaskExecutionPlan.java:580)
      at org.gradle.execution.taskgraph.DefaultTaskPlanExecutor$TaskExecutorWorker.run(DefaultTaskPlanExecutor.java:99)
      at org.gradle.internal.concurrent.ExecutorPolicy$CatchAndRecordFailures.onExecute(ExecutorPolicy.java:63)
      at org.gradle.internal.concurrent.ManagedExecutorImpl$1.run(ManagedExecutorImpl.java:46)
      at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
      at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
      at org.gradle.internal.concurrent.ThreadFactoryImpl$ManagedThreadRunnable.run(ThreadFactoryImpl.java:55)
      at java.lang.Thread.run(Thread.java:745)
   FAILED
  
  FAILURE: Build failed with an exception.
  
  * What went wrong:
  Execution failed for task ':app:compileDebugJavaWithJavac'.
  &gt; Compilation failed; see the compiler error output for details.
  
  * Try:
  Run with --info or --debug option to get more log output.
  
  * Exception is:
  org.gradle.api.tasks.TaskExecutionException: Execution failed for task ':app:compileDebugJavaWithJavac'.
      at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.executeActions(ExecuteActionsTaskExecuter.java:100)
      at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.execute(ExecuteActionsTaskExecuter.java:70)
      at org.gradle.api.internal.tasks.execution.SkipUpToDateTaskExecuter.execute(SkipUpToDateTaskExecuter.java:63)
      at org.gradle.api.internal.tasks.execution.ResolveTaskOutputCachingStateExecuter.execute(ResolveTaskOutputCachingStateExecuter.java:54)
      at org.gradle.api.internal.tasks.execution.ValidatingTaskExecuter.execute(ValidatingTaskExecuter.java:58)
      at org.gradle.api.internal.tasks.execution.SkipEmptySourceFilesTaskExecuter.execute(SkipEmptySourceFilesTaskExecuter.java:88)
      at org.gradle.api.internal.tasks.execution.ResolveTaskArtifactStateTaskExecuter.execute(ResolveTaskArtifactStateTaskExecuter.java:52)
      at org.gradle.api.internal.tasks.execution.SkipTaskWithNoActionsExecuter.execute(SkipTaskWithNoActionsExecuter.java:52)
      at org.gradle.api.internal.tasks.execution.SkipOnlyIfTaskExecuter.execute(SkipOnlyIfTaskExecuter.java:54)
      at org.gradle.api.internal.tasks.execution.ExecuteAtMostOnceTaskExecuter.execute(ExecuteAtMostOnceTaskExecuter.java:43)
      at org.gradle.api.internal.tasks.execution.CatchExceptionTaskExecuter.execute(CatchExceptionTaskExecuter.java:34)
      at org.gradle.execution.taskgraph.DefaultTaskGraphExecuter$EventFiringTaskWorker$1.run(DefaultTaskGraphExecuter.java:248)
      at org.gradle.internal.progress.DefaultBuildOperationExecutor$RunnableBuildOperationWorker.execute(DefaultBuildOperationExecutor.java:336)
      at org.gradle.internal.progress.DefaultBuildOperationExecutor$RunnableBuildOperationWorker.execute(DefaultBuildOperationExecutor.java:328)
      at org.gradle.internal.progress.DefaultBuildOperationExecutor.execute(DefaultBuildOperationExecutor.java:197)
      at org.gradle.internal.progress.DefaultBuildOperationExecutor.run(DefaultBuildOperationExecutor.java:107)
      at org.gradle.execution.taskgraph.DefaultTaskGraphExecuter$EventFiringTaskWorker.execute(DefaultTaskGraphExecuter.java:241)
      at org.gradle.execution.taskgraph.DefaultTaskGraphExecuter$EventFiringTaskWorker.execute(DefaultTaskGraphExecuter.java:230)
      at org.gradle.execution.taskgraph.DefaultTaskPlanExecutor$TaskExecutorWorker.processTask(DefaultTaskPlanExecutor.java:124)
      at org.gradle.execution.taskgraph.DefaultTaskPlanExecutor$TaskExecutorWorker.access$200(DefaultTaskPlanExecutor.java:80)
      at org.gradle.execution.taskgraph.DefaultTaskPlanExecutor$TaskExecutorWorker$1.execute(DefaultTaskPlanExecutor.java:105)
      at org.gradle.execution.taskgraph.DefaultTaskPlanExecutor$TaskExecutorWorker$1.execute(DefaultTaskPlanExecutor.java:99)
      at org.gradle.execution.taskgraph.DefaultTaskExecutionPlan.execute(DefaultTaskExecutionPlan.java:625)
      at org.gradle.execution.taskgraph.DefaultTaskExecutionPlan.executeWithTask(DefaultTaskExecutionPlan.java:580)
      at org.gradle.execution.taskgraph.DefaultTaskPlanExecutor$TaskExecutorWorker.run(DefaultTaskPlanExecutor.java:99)
      at org.gradle.internal.concurrent.ExecutorPolicy$CatchAndRecordFailures.onExecute(ExecutorPolicy.java:63)
      at org.gradle.internal.concurrent.ManagedExecutorImpl$1.run(ManagedExecutorImpl.java:46)
      at org.gradle.internal.concurrent.ThreadFactoryImpl$ManagedThreadRunnable.run(ThreadFactoryImpl.java:55)
  Caused by: org.gradle.api.internal.tasks.compile.CompilationFailedException: Compilation failed; see the compiler error output for details.
      at org.gradle.api.internal.tasks.compile.JdkJavaCompiler.execute(JdkJavaCompiler.java:51)
      at org.gradle.api.internal.tasks.compile.JdkJavaCompiler.execute(JdkJavaCompiler.java:36)
      at org.gradle.api.internal.tasks.compile.NormalizingJavaCompiler.delegateAndHandleErrors(NormalizingJavaCompiler.java:99)
      at org.gradle.api.internal.tasks.compile.NormalizingJavaCompiler.execute(NormalizingJavaCompiler.java:52)
      at org.gradle.api.internal.tasks.compile.NormalizingJavaCompiler.execute(NormalizingJavaCompiler.java:37)
      at org.gradle.api.internal.tasks.compile.CleaningJavaCompilerSupport.execute(CleaningJavaCompilerSupport.java:35)
      at org.gradle.api.internal.tasks.compile.CleaningJavaCompilerSupport.execute(CleaningJavaCompilerSupport.java:25)
      at org.gradle.api.internal.tasks.compile.incremental.IncrementalCompilationFinalizer.execute(IncrementalCompilationFinalizer.java:39)
      at org.gradle.api.internal.tasks.compile.incremental.IncrementalCompilationFinalizer.execute(IncrementalCompilationFinalizer.java:24)
      at org.gradle.api.tasks.compile.JavaCompile.performCompilation(JavaCompile.java:198)
      at org.gradle.api.tasks.compile.JavaCompile.compile(JavaCompile.java:129)
      at com.android.build.gradle.tasks.factory.AndroidJavaCompile.compile(AndroidJavaCompile.java:95)
      at org.gradle.internal.reflect.JavaMethod.invoke(JavaMethod.java:73)
      at org.gradle.api.internal.project.taskfactory.DefaultTaskClassInfoStore$IncrementalTaskAction.doExecute(DefaultTaskClassInfoStore.java:173)
      at org.gradle.api.internal.project.taskfactory.DefaultTaskClassInfoStore$StandardTaskAction.execute(DefaultTaskClassInfoStore.java:134)
      at org.gradle.api.internal.project.taskfactory.DefaultTaskClassInfoStore$StandardTaskAction.execute(DefaultTaskClassInfoStore.java:121)
      at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter$1.run(ExecuteActionsTaskExecuter.java:122)
      at org.gradle.internal.progress.DefaultBuildOperationExecutor$RunnableBuildOperationWorker.execute(DefaultBuildOperationExecutor.java:336)
      at org.gradle.internal.progress.DefaultBuildOperationExecutor$RunnableBuildOperationWorker.execute(DefaultBuildOperationExecutor.java:328)
      at org.gradle.internal.progress.DefaultBuildOperationExecutor.execute(DefaultBuildOperationExecutor.java:197)
      at org.gradle.internal.progress.DefaultBuildOperationExecutor.run(DefaultBuildOperationExecutor.java:107)
      at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.executeAction(ExecuteActionsTaskExecuter.java:111)
      at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.executeActions(ExecuteActionsTaskExecuter.java:92)
      ... 27 more
  
  
  * Get more help at https://help.gradle.org
  
  BUILD FAILED in 19s
  259 actionable tasks: 6 executed, 253 up-to-date
  10:58:01: External task execution finished 'assembleDebug --stacktrace'.
  </code></pre>
  
  <p>My project gradle file:</p>
  
  <pre><code>apply from: 'dependencies.gradle'
  buildscript {
      repositories {
          jcenter()
          mavenCentral()
          maven { url "https://jitpack.io" }
          maven { url 'https://maven.fabric.io/public' }
          google()
      }
      dependencies {
          classpath 'com.android.tools.build:gradle:3.0.0'
          classpath 'com.google.gms:google-services:3.1.0'
          classpath 'io.fabric.tools:gradle:1.+'
      }
  }
  
  allprojects {
      repositories {
          jcenter()
          mavenCentral()
          maven { url "https://jitpack.io" }
          maven { url 'https://maven.fabric.io/public' }
          google()
      }
  
      ext {
          androidApplicationId = 'com.example'
          androidVersionCode = 1
          androidVersionName = "1.1.0"
      }
  }
  
  task clean(type: Delete) {
      delete rootProject.buildDir
  }
  </code></pre>
  
  <p>File <code>:app/ build.gradle</code>:</p>
  
  <pre><code>    apply plugin: 'com.android.application'
      apply plugin: 'io.fabric'
  
  
      android {
          compileSdkVersion 25
          buildToolsVersion "26.0.2"
  
          defaultConfig {
              multiDexEnabled true
              applicationId "com.example"
              minSdkVersion 21
              targetSdkVersion 23
              versionCode 1
              versionName "1.0"
  
              renderscriptTargetApi 23
              renderscriptSupportModeEnabled true
  
          }
          compileOptions {
              targetCompatibility 1.8
              sourceCompatibility 1.8
          }
          lintOptions {
              quiet true
              abortOnError false
              ignoreWarnings true
              disable 'InvalidPackage'           //Some libraries have issues with this.
              disable 'OldTargetApi'
              //Lint gives this warning but SDK 20 would be Android L Beta.
              disable 'IconDensities'            //For testing purpose. This is safe to remove.
              disable 'IconMissingDensityFolder' //For testing purpose. This is safe to remove.
          }
  
  
          dexOptions {
              javaMaxHeapSize "8G"
          }
  
          packagingOptions {
              exclude 'LICENSE.txt'
              exclude 'META-INF/DEPENDENCIES.txt'
              exclude 'META-INF/LICENSE.txt'
              exclude 'META-INF/NOTICE.txt'
              exclude 'META-INF/NOTICE'
              exclude 'META-INF/LICENSE'
              exclude 'META-INF/DEPENDENCIES'
              exclude 'META-INF/notice.txt'
              exclude 'META-INF/license.txt'
              exclude 'META-INF/dependencies.txt'
              exclude 'META-INF/rxjava.properties'
          }
  
          sourceSets {
              main.java.srcDirs += 'build/generated/source/apt'
          }
      }
  
      repositories {
          flatDir {
              dirs 'libs'
          }
      }
  
  
  
      dependencies {
      implementation fileTree(dir: 'libs', include: ['*.jar'])
  
      implementation project(':library_api')
      implementation project(':library_base')
      implementation project(':library_blur_dialog')
      implementation project(':library_countrycodepicker_dialog')
      implementation project(':library_glow_decorator')
      implementation project(':library_icons')
      implementation project(':library_loopvideo')
      implementation project(':library_section_adaper')
      implementation project(':library_taptargetview')
      implementation project(':library_ucrop')
      implementation project(':library_utils')
      implementation project(':library_utils_picasso')
      implementation project(':library_vector_compat')
      implementation project(':library_view_clock')
      implementation project(':library_view_shimmer_recycler')
  
      implementation "com.google.android.gms:play-services-cast-framework:11.4.2"
      compileOnly 'com.google.android.wearable:wearable:2.0.3'
      implementation 'com.google.android.support:wearable:2.0.3'
      implementation 'com.google.android.exoplayer:exoplayer:r2.4.1'
  
      implementation "com.android.support:mediarouter-v7:25.4.0"
      implementation "com.android.support:leanback-v17:25.4.0"
      implementation "com.android.support:design:25.4.0"
  
      implementation "com.android.support:appcompat-v7:25.4.0"
      implementation "com.android.support:support-v4:25.4.0"
      implementation "com.android.support:gridlayout-v7:25.4.0"
      implementation "com.android.support:cardview-v7:25.4.0"
      implementation "com.android.support:recyclerview-v7:25.4.0"
      implementation "com.android.support:preference-v14:25.4.0"
  
      // rxjava
      implementation  'io.reactivex:rxjava:1.2.9'
      implementation 'io.reactivex:rxandroid:1.2.1'
      implementation 'com.github.davidmoten:rxjava-extras:0.8.0.6'
  
      // square
       "com.squareup.retrofit2:retrofit:2.1.0",
      implementation  "com.squareup.retrofit2:converter-gson:2.1.0"
      implementation "com.squareup.retrofit2:adapter-rxjava:2.1.0"
      implementation "com.squareup.phrase:phrase:1.1.0"
  
      implementation "com.squareup.okhttp3:okhttp:3.6.0"
      implementation "com.squareup.okhttp3:logging-interceptor:3.6.0"
      implementation "com.squareup.okhttp3:okhttp-urlconnection:3.6.0"
  
      // picasso
      implementation  "com.squareup.picasso:picasso:2.5.2"
      implementation 'com.jakewharton.picasso:picasso2-okhttp3-downloader:1.1.0'
  
      // dagger
      implementation "com.google.dagger:dagger:2.10"
      annotationProcessor  "com.google.dagger:dagger-compiler:2.10"
      implementation "javax.annotation:jsr250-api:1.0"
      implementation  "javax.inject:javax.inject:1"
  
  
      // jake ftw
      implementation 'com.jakewharton:butterknife:8.8.1'
      annotationProcessor 'com.jakewharton:butterknife-compiler:8.8.1'
  
      compileOnly 'org.projectlombok:lombok:1.16.16'
      annotationProcessor 'org.projectlombok:lombok:1.16.16'
  
      // FragmentWithArgs
      implementation   "com.hannesdorfmann.fragmentargs:annotation:3.0.2",
      annotationProcessor "com.hannesdorfmann.fragmentargs:processor:3.0.2",
  
      implementation "org.parceler:parceler-api:1.1.9",
      annotationProcessor "org.parceler:parceler:1.1.9",
      implementation 'com.hannesdorfmann.fragmentargs:bundler-parceler:3.0.2'
  
      implementation "com.github.codekidX:storage-chooser:1.0.34"
  
      implementation 'io.github.yavski:fab-speed-dial:1.0.6'
  
      implementation('com.crashlytics.sdk.android:crashlytics:2.6.7@aar') {
          transitive = true;
      }
  
      // intent builder
      implementation         "com.github.marcinmoskala.activitystarter:activitystarter:1.00"
  annotationProcessor  "com.github.marcinmoskala.activitystarter:activitystarter-compiler:1.00"
  
      implementation 'com.android.support.constraint:constraint-layout:1.0.2'//constraint-layout
      implementation 'org.greenrobot:eventbus:3.0.0'
      //font
      implementation 'uk.co.chrisjenx:calligraphy:2.2.0'
      implementation 'com.github.florent37:expectanim:1.0.6'
      implementation 'com.romandanylyk:pageindicatorview:0.2.0@aar'
      implementation 'com.github.rubensousa:gravitysnaphelper:1.2'
      implementation 'com.flaviofaria:kenburnsview:1.0.7'
      implementation 'com.github.florent37:arclayout:1.0.2'
  
      implementation 'com.jakewharton.rxbinding:rxbinding:1.0.1'
      implementation 'com.wang.avi:library:2.1.3'
      implementation 'com.flyco.tablayout:FlycoTabLayout_Lib:2.1.2@aar'
      implementation 'com.borax12.materialdaterangepicker:library:1.9'
      implementation 'com.github.scottyab:showhidepasswordedittext:0.8'
      //Location
      implementation "com.google.android.gms:play-services-maps:11.4.2"
      implementation 'pl.charmas.android:android-reactive-location:0.10@aar'
      implementation "com.google.android.gms:play-services-location:11.4.2"
      //you can use newer GMS version if you need
      implementation "com.google.android.gms:play-services-places:11.4.2"
      implementation 'com.tbruyelle.rxpermissions:rxpermissions:0.9.4@aar'
      implementation 'commons-validator:commons-validator:1.4.1'
      implementation 'com.balysv:material-ripple:1.0.2'
      implementation 'com.googlecode.libphonenumber:libphonenumber:8.5.2'
      implementation 'ru.egslava:MaskedEditText:1.0.5'
      implementation 'com.futuremind.recyclerfastscroll:fastscroll:0.2.5'
  
      implementation "com.google.firebase:firebase-core:11.4.2"
  
  
      implementation 'com.labo.kaji:swipeawaydialog:0.1.1'
      implementation 'io.supercharge:shimmerlayout:1.0.1'
      implementation 'hanks.xyz:htextview-library:0.1.5'
      implementation 'com.github.castorflex.smoothprogressbar:library:1.1.0'//progressbar for action bar
      implementation 'io.reactivex:rxjava-math:1.0.0'
      implementation 'jp.wasabeef:picasso-transformations:2.1.2'
      implementation 'com.afollestad.material-dialogs:core:0.9.1.0'
      implementation('com.github.ihsanbal:LoggingInterceptor:2.0.2') {
          exclude group: 'org.json', module: 'json'
      }
  
  }
  apply plugin: 'com.google.gms.google-services'
  </code></pre>
  
  <p>Application class:</p>
  
  <pre><code>public class TheApplication  extends Application {
  ...
  }
  </code></pre>