if one uses EANT_GENTOO_CLASSPATH="cglib:2.1,commons-cli:1,commons-net,javamail,log4j,xpp3,xstream" where SLOTS are sperated by colons it is transformed to DEPEND="cglib:2.1:commons-cli:1:commons-net:javamail:log4j:xpp3:xstream" in package.env, which makes the launcher fail with java_config_2.Errors.UnexistingPackageError: Package cglib was not found! Using a hyphen works well and is transformed to DEPEND="cglib-2.1:commons-cli-1:commons-net:javamail:log4j:xpp3:xstream"
Created attachment 280101 [details, diff] Fix the behaviour for eapis other than 0 1 The substitution is done for EAPI=1, not for later ones. Do the same for other ones.
I remember Chewi and wltjr discussing this problem in #gentoo-java. :)
Although the original intention was to allow colons in EANT_GENTOO_CLASSPATH (and it did work in EAPI 1), a grep of the tree shows that this was only ever done in about 5 packages. wltjr has argued that the colon syntax is more consistent with the ebuild's DEPEND but I don't want to end up in a situation where half the ebuilds use one syntax and half the ebuilds use the other. Better to just nip this in the bug and ban the colon syntax now. It's a little confusing for the first 10 seconds but really not that hard to get your head around.