@@ -302,7 +302,7 @@ repositories {
302
302
dirs pluginDependencies
303
303
}
304
304
}
305
-
305
+
306
306
mavenCentral()
307
307
}
308
308
@@ -583,7 +583,7 @@ allprojects {
583
583
def artifactType = Attribute . of(' artifactType' , String )
584
584
android. applicationVariants. all { variant ->
585
585
if (variant. buildType. name == buildType) {
586
- variant. getCompileClasspath(). each { fileDependency ->
586
+ variant. getCompileClasspath(). each { fileDependency ->
587
587
processJar(fileDependency, jars)
588
588
}
589
589
}
@@ -772,26 +772,45 @@ task buildMetadata(type: BuildToolTask) {
772
772
doFirst {
773
773
// get compiled classes to pass to metadata generator
774
774
// these need to be called after the classes have compiled
775
- assert file(classesDir). exists()
776
-
777
775
new File (getMergedAssetsOutputPath() + " /metadata" ). deleteDir()
778
776
779
- def classesSubDirs = new File (classesDir). listFiles()
777
+ def classesSubDirs = []
778
+ def kotlinClassesSubDirs = []
780
779
def selectedBuildType = project. ext. selectedBuildType
781
780
781
+ rootProject. subprojects {
782
+ def projectClassesDir = new File (" $it . buildDir /intermediates/javac" )
783
+ def projectKotlinClassesDir = new File (" $it . buildDir /tmp/kotlin-classes" )
784
+
785
+ assert projectClassesDir. exists()
786
+
787
+ def projectClassesSubDirs = projectClassesDir. listFiles()
788
+ for (File subDir : projectClassesSubDirs) {
789
+ if (! classesSubDirs. contains(subDir)) {
790
+ classesSubDirs. add(subDir)
791
+ }
792
+ }
793
+
794
+ if (projectKotlinClassesDir. exists()) {
795
+ def projectKotlinClassesSubDirs = projectKotlinClassesDir. listFiles();
796
+ for (File subDir : projectKotlinClassesSubDirs) {
797
+ if (! kotlinClassesSubDirs. contains(subDir)) {
798
+ kotlinClassesSubDirs. add(subDir)
799
+ }
800
+ }
801
+ }
802
+ }
803
+
782
804
def generatedClasses = new LinkedList<String > ()
783
805
for (File subDir : classesSubDirs) {
784
806
if (subDir. getName() == selectedBuildType) {
785
807
generatedClasses. add(subDir. getAbsolutePath())
786
808
}
787
809
}
788
810
789
- if (file(kotlinClassesDir). exists()) {
790
- def kotlinClassesSubDirs = new File (kotlinClassesDir). listFiles()
791
- for (File subDir : kotlinClassesSubDirs) {
792
- if (subDir. getName() == selectedBuildType) {
793
- generatedClasses. add(subDir. getAbsolutePath())
794
- }
811
+ for (File subDir : kotlinClassesSubDirs) {
812
+ if (subDir. getName() == selectedBuildType) {
813
+ generatedClasses. add(subDir. getAbsolutePath())
795
814
}
796
815
}
797
816
0 commit comments