From 6c6e6cd64d7754a988c2a4172010dce4e39cadd0 Mon Sep 17 00:00:00 2001 From: Colin Cross Date: Wed, 8 May 2019 14:30:12 -0700 Subject: Don't hide *.kotlin_module in turbine dependencies The jars containing the merged header classes from transitive static dependencies were stripping all of META-INF/. Kotlin puts metadata in META-INF that is used to map the package to the static class that contains the package-level functions. This also exposed that the metadata in META-INF is always called "name.kotlin_module", so a library that contains kotlin files with a dependency that also contains kotlin files would shade the metadata file. Use a unique name instead. Fixes: 131709692 Test: m checkbuild Change-Id: I5cd276e563206e37c4c0d90fe9f346e9396f88c0 --- java/java.go | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'java/java.go') diff --git a/java/java.go b/java/java.go index e764ec303..4ca783883 100644 --- a/java/java.go +++ b/java/java.go @@ -1380,7 +1380,7 @@ func (j *Module) compileJavaHeader(ctx android.ModuleContext, srcFiles, srcJars // since we have to strip META-INF/TRANSITIVE dir from turbine.jar combinedJar := android.PathForModuleOut(ctx, "turbine-combined", jarName) TransformJarsToJar(ctx, combinedJar, "for turbine", jars, android.OptionalPath{}, - false, nil, []string{"META-INF"}) + false, nil, []string{"META-INF/TRANSITIVE"}) headerJar = combinedJar if j.expandJarjarRules != nil { -- cgit v1.2.3-59-g8ed1b