From 5aa2133a97137a17423716e7f55a38b9e6f9cb9d Mon Sep 17 00:00:00 2001 From: Raffi Khatchadourian Date: Thu, 7 May 2026 16:07:07 -0400 Subject: [PATCH] Scope `jython3.test`'s build resource so `target/` isn't copied recursively into itself. `com.ibm.wala.cast.python.jython3.test/pom.xml` declares its build resource as the module root: ```xml . ``` Maven copies that into `target/classes/` on every build. Since `target/` is at the module root, the second build copies the previous build's `target/` into `target/classes/target/`; the third copies that into `target/classes/target/classes/target/`; and so on. Each level includes the module's own `*-SNAPSHOT.jar`, so disk usage grows exponentially — on a local checkout this had reached 99 GB after a handful of `mvn install` cycles. Sibling `com.ibm.wala.cast.python.test/pom.xml` does it correctly with `data` (scoped to a specific source directory). This PR scopes the jython3.test resource to just the three entries that need to be on the classpath (`META-INF/`, `build.properties`, `logging.properties`) via an `` filter, so `target/` is never captured. Verified locally: two consecutive `mvn clean install` + `mvn install` cycles produce a `target/classes/` containing only the expected resources (`META-INF/`, `build.properties`, compiled `com/`); no self-referential `target/` directory; total `target/` size 184 KB. --- jython/com.ibm.wala.cast.python.jython3.test/pom.xml | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/jython/com.ibm.wala.cast.python.jython3.test/pom.xml b/jython/com.ibm.wala.cast.python.jython3.test/pom.xml index eb2dff5c6..5a65fb235 100644 --- a/jython/com.ibm.wala.cast.python.jython3.test/pom.xml +++ b/jython/com.ibm.wala.cast.python.jython3.test/pom.xml @@ -40,6 +40,11 @@ . + + META-INF/** + build.properties + logging.properties +