MANEFEST class path attribute uses repository style name despite setting
classpathMavenRepositoryLayout to false
----------------------------------------------------------------------------------------------------------------
Key: MSHARED-140
URL: http://jira.codehaus.org/browse/MSHARED-140
Project: Maven Shared Components
Issue Type: Bug
Components: maven-archiver
Environment: Ubuntu 9.04 64bit
Reporter: Mike Power
Attachments: pom.xml
I ran into this while porting a windows maven build to linux. Thanks to all
your guy's work is was very error free.
However I did run into one problem where I was getting class not found
exceptions for ejb.
After digging in deep I found our MANIFEST.MF file looked something like this:
Class-Path: someintuitlib-ejb-1.0-20090513.083158-9-client.jar
As opposed to windows where it looked like:
Class-Path: someintuitlib-ejb-1.0-SNAPSHOT-client.jar
When the jars are wrapped up in linux they use the
someintuitlib-ejb-1.0-SNAPSHOT-client.jar for the file name. Thus the
classpath fails and a class not found exception results.
This seems to be specific to linux and ejb relying on SNAPSHOTs built on
another machine and uploaded to a shared repository. There are other SNAPSHOTs
in the dependency list and their names are used correctly. Those SNAPSHOTs are
built locally as part of the build. Thus I think it is specific to SNAPSHOTs
built remotely and uploaded to a shared SNAPSHOT repository.
I have supplied a sample pom.xml that may generate the bug but I can not test
it out as I do not have a remote repository that I can push SNAPSHOTs to.
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
http://jira.codehaus.org/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira