The splitting of groovy into smaller causes another, very major, problem:
First, consider the "main" groovy jar: It contains the package groovy.util with numerous classes.
Secondly, consider the groovy-xml jar. It contains the package groovy.util and therein the classes XMLParser etc.
Regardless whether you use OSGi (like in our case) or Java 9 (what we are migrating to): This presents a split-package itself: As we already reproduced in our build: Whatever jar of these is loaded first wins the groovy.util package and "overrides" the other.
As a result, it's become random whether our users can use XMLParser or not. Sometimes it is found, sometimes it's not. I consider this a very major problem and a blocker as it makes execution unreliable and randomish. I did not check but somewhat guess that this is not the only collision of this sort.
Therefore, the splitting of groovy 2.5 into smaller pieces introduced split-packages to itself. If one wants to split groovy, the split will have to follow package borders.