It looks like this was introduced in CALCITE-741. The intent of the change isn't necesarily wrong, but I believe this is just trying to work against Maven.

I think the change to make for Maven to work as it wants is to make a new module dedicated to creating the assembly. That module will depend on the other modules which should properly create the transitive dependency list.

It's also worth noting that the maven-remote-resources-plugin configuration littered everywhere is duplicative (this is already handled in the Apache parent pom).