Add exclude_files and exclude_dirs properties to java_import
Prebuilt jars sometime contain files that we don't want. In Make
we would delete everything in META-INF when importing jars, but
that caused problems when there were necessary files in there,
so we added LOCAL_DONT_DELETE_JAR_META_INF.
Soong does the opposite, keeping everything by default. Add
properties to allow explicitly stripping unwanted files instead.
Bug: 111389216
Test: m checkbuild
Change-Id: I6d07f519ebc7d0e1bf0af93416bb569e3c2b1500
diff --git a/java/java_test.go b/java/java_test.go
index 537bdb9..6bba29b 100644
--- a/java/java_test.go
+++ b/java/java_test.go
@@ -598,14 +598,15 @@
javac := ctx.ModuleForTests("foo", "android_common").Rule("javac")
combineJar := ctx.ModuleForTests("foo", "android_common").Description("for javac")
+ barJar := ctx.ModuleForTests("bar", "android_common").Rule("combineJar").Output
+ bazJar := ctx.ModuleForTests("baz", "android_common").Rule("combineJar").Output
- bar := "a.jar"
- if !strings.Contains(javac.Args["classpath"], bar) {
- t.Errorf("foo classpath %v does not contain %q", javac.Args["classpath"], bar)
+ if !strings.Contains(javac.Args["classpath"], barJar.String()) {
+ t.Errorf("foo classpath %v does not contain %q", javac.Args["classpath"], barJar.String())
}
- if len(combineJar.Inputs) != 2 || combineJar.Inputs[1].String() != "b.jar" {
- t.Errorf("foo combineJar inputs %v does not contain %q", combineJar.Inputs, "b.jar")
+ if len(combineJar.Inputs) != 2 || combineJar.Inputs[1].String() != bazJar.String() {
+ t.Errorf("foo combineJar inputs %v does not contain %q", combineJar.Inputs, bazJar.String())
}
}