Description of problem: maven2.2.2.1-7.fc14 is unusable if it is installed via an upgrade from maven2.2.0.8-3.fc12. Maven crashes with a NoClassDefFoundError when it is ran. Version-Release number of selected component (if applicable): maven2.2.2.1-7.fc14 maven2.2.0.8-3.fc12 How reproducible: 100% Steps to Reproduce: 1. yum erase maven2 2. yum install --disablerepo=rawhide maven2 maven2.2.0.8-3.fc12 is installed. 3. yum upgrade --enablerepo=rawhide maven2 maven2.2.2.1-7.fc14 is installed. 4. mvn -v Actual results: 'mvn -v' crashes with a java.lang.NoClassDefFoundError: TransferListener Expected results: maven2 shows its version info and exits cleanly. Additional info: It is the symlinks, and not the jars, that are missing. For the case described above, I can find TransferListener in this jar files: /usr/share/java/maven-wagon/provider-api.jar It seems like this should be symlinked, along with others, in this directory: /usr/share/maven2/lib/maven-wagon_provider-api.jar However, only a subset of the required jars exist. In other words, maven2 successfully installs the jars, but it seems to omit creating the symlinks. == Workarounds == --- Installing rawhide's version directly --- Installing, and not upgrading, gives me a working maven2. This leads me to suspect that the bug is in the stable version and not the one in rawhide. 1. yum erase maven2 2. yum install --enablerepo=rawhide maven2 3. mvn -v --- Manually running build-jar-repository --- Running the commands in maven2's %post in /usr/share/maven2/lib also gives me a working maven2. 1. build-jar-repository -s -p . backport-util-concurrent jsch commons-cli commons-httpclient commons-codec nekohtml maven-shared/reporting-api maven-doxia/logging-api maven-doxia/sink-api maven-wagon/file maven-wagon/http maven-wagon/http-lightweight maven-wagon/http-shared maven-wagon/provider-api maven-wagon/ssh maven-wagon/ssh-common maven-wagon/ssh-external plexus/container-default plexus/interactivity-api plexus/interpolation plexus/utils slf4j/jcl-over-slf4j slf4j/api slf4j/jdk14 slf4j/nop plexus/plexus-cipher plexus/plexus-sec-dispatcher xerces-j2
Created attachment 431325 [details] Output demonstrating the direct-install workaround Output shown when installing maven2 directly from rawhide.
Created attachment 431328 [details] Output demonstrating the direct-install workaround Output shown when installing maven2 directly from rawhide.
Created attachment 431333 [details] listings of /usr/share/maven2/lib, before and after the rawhide upgrade Output showing the state of /usr/share/maven2/lib as I install maven2, first from @fedora, then from @rawhide. This shows that some jars that existed previously no longer have symlinks. It also demonstrates that this directory is modified by the upgrade, as the timestamps are changed.
Created attachment 431334 [details] crash and reproduced bug output Output demonstrating the encountered bug.
This bug appears to have been reported against 'rawhide' during the Fedora 14 development cycle. Changing version to '14'. More information and reason for this action is here: http://fedoraproject.org/wiki/BugZappers/HouseKeeping
I have just met this bug to after upgrading from @fedora to @rawhide. Yum erase followed by yum install indeed fixed it.
Fixed in rawhide (maven2-2.2.1-13.fc15) and f14 (maven2-2.2.1-13.fc14) rawhide: http://koji.fedoraproject.org/koji/taskinfo?taskID=2477294 F14: http://koji.fedoraproject.org/koji/taskinfo?taskID=2477313
maven2-2.2.1-13.fc14 has been submitted as an update for Fedora 14. https://admin.fedoraproject.org/updates/maven2-2.2.1-13.fc14
maven2-2.2.1-13.fc14 has been pushed to the Fedora 14 stable repository. If problems still persist, please make note of it in this bug report.