Bug 613866

Summary: maven2 is missing symlinks to essential libraries after upgrading to rawhide
Product: [Fedora] Fedora Reporter: Aaron Faanes <dafrito>
Component: maven2Assignee: Yong Yang <yyang>
Status: CLOSED ERRATA QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: medium Docs Contact:
Priority: low    
Version: 14CC: akurtako, dbhole, pingou, sochotni, yyang
Target Milestone: ---   
Target Release: ---   
Hardware: All   
OS: Linux   
Whiteboard:
Fixed In Version: maven2-2.2.1-13.fc14 Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2010-09-20 15:22:28 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Attachments:
Description Flags
Output demonstrating the direct-install workaround
none
Output demonstrating the direct-install workaround
none
listings of /usr/share/maven2/lib, before and after the rawhide upgrade
none
crash and reproduced bug output none

Description Aaron Faanes 2010-07-13 02:04:09 UTC
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

Comment 1 Aaron Faanes 2010-07-13 02:23:23 UTC
Created attachment 431325 [details]
Output demonstrating the direct-install workaround

Output shown when installing maven2 directly from rawhide.

Comment 2 Aaron Faanes 2010-07-13 02:26:56 UTC
Created attachment 431328 [details]
Output demonstrating the direct-install workaround

Output shown when installing maven2 directly from rawhide.

Comment 3 Aaron Faanes 2010-07-13 02:39:28 UTC
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.

Comment 4 Aaron Faanes 2010-07-13 02:43:52 UTC
Created attachment 431334 [details]
crash and reproduced bug output

Output demonstrating the encountered bug.

Comment 5 Bug Zapper 2010-07-30 12:32:31 UTC
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

Comment 6 Pierre-YvesChibon 2010-09-09 06:32:23 UTC
I have just met this bug to after upgrading from @fedora to @rawhide.

Yum erase followed by yum install indeed fixed it.

Comment 7 Stanislav Ochotnicky 2010-09-20 15:22:28 UTC
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

Comment 8 Fedora Update System 2010-09-21 07:09:31 UTC
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

Comment 9 Fedora Update System 2010-10-13 12:46:48 UTC
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.