Maven Shared Components
  1. Maven Shared Components
  2. MSHARED-140

MANEFEST class path attribute uses repository style name despite setting classpathMavenRepositoryLayout to false

    Details

    • Type: Bug Bug
    • Status: Closed Closed
    • Priority: Major Major
    • Resolution: Won't Fix
    • Affects Version/s: None
    • Fix Version/s: None
    • Component/s: maven-archiver
    • Labels:
      None
    • Environment:
      Ubuntu 9.04 64bit
    • Number of attachments :
      2

      Description

      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.

      1. pom.xml
        2 kB
        Mike Power

        Activity

        Hide
        Dennis Lundberg added a comment -

        The parameter classpathMavenRepositoryLayout specifies if the Class-Path of the manifest should contain a Maven repository like path or not. It doesn't affect the name of the file in the manifest. See
        http://maven.apache.org/shared/maven-archiver/#class_manifest

        Show
        Dennis Lundberg added a comment - The parameter classpathMavenRepositoryLayout specifies if the Class-Path of the manifest should contain a Maven repository like path or not. It doesn't affect the name of the file in the manifest. See http://maven.apache.org/shared/maven-archiver/#class_manifest
        Hide
        Dennis Lundberg added a comment -

        I modified your pom.xml slightly and added a public SNAPSHOT repository. See attached sample project.

        Then I tried it on Windows, and I get the following Class-Path entry in the MANIFEST.MF:

        Class-Path: commons-math-2.0-20090723.185718-6.jar
        
        Show
        Dennis Lundberg added a comment - I modified your pom.xml slightly and added a public SNAPSHOT repository. See attached sample project. Then I tried it on Windows, and I get the following Class-Path entry in the MANIFEST.MF: Class-Path: commons-math-2.0-20090723.185718-6.jar
        Hide
        Mike Power added a comment -

        You are right I get the same behaviour on both my windows and linux. Thanks for the snapshot repsitory. I'll do some more triage and see if I can narrow the bug down. I'll upload a new project once I figure out what is going on.

        Show
        Mike Power added a comment - You are right I get the same behaviour on both my windows and linux. Thanks for the snapshot repsitory. I'll do some more triage and see if I can narrow the bug down. I'll upload a new project once I figure out what is going on.
        Hide
        Michael Osipov added a comment -

        Please refer to https://cwiki.apache.org/confluence/display/MAVEN/The+Great+JIRA+Cleanup+of+2014 if you're wondering why this issue was closed out.

        Show
        Michael Osipov added a comment - Please refer to https://cwiki.apache.org/confluence/display/MAVEN/The+Great+JIRA+Cleanup+of+2014 if you're wondering why this issue was closed out.

          People

          • Assignee:
            Unassigned
            Reporter:
            Mike Power
          • Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

            Dates

            • Created:
              Updated:
              Resolved: