If both effective/parent poms are installed and mvn-local/rpmbuild
gain their "pristine" flag - there would be no reason to not rely on
the parent poms and reliable(aka reacts accordingly to changes)
development environment will be available.
Looks like we have a consensus, finally :)
To summarize:
1. %mvn_install will install raw POMs into /usr/share/maven-poms
as this was always done
2. %mvn_install will additionally install effective POMs into some
other location (perhaps /usr/share/maven-fragments) for every
non-POM artifact
3. XMvn and all scripts and programs that use is (including xmvn,
mvn-rpmbuild, mvn-local, %mvn_build, Tycho) will resolve effective
POMs by default. With some option specified they will not
resolve effective POMs, but raw POMs instead.
4. Packages will *not* Require their parent POM files because it's not
required by standard dependency resolution mechanism (which will use
effective POMs). Packagers will need to manually BuildRequire all
necessary parent POM files if needed.
5. I will implement the described behaviour before the next Java SIG
meeting and make it available in rawhide.
6. I will identify all packages that install only effective POMs and
make the list publicly available (post it on the list).
7. This change in XMvn behaviour doesn't need to be reflected in Java
packaging guidelines.
Aleksandar, is that correct? Do you agree with that?
Does anyone else have any objections about this solution?