Details

    • Type: Bug Bug
    • Status: Closed Closed
    • Priority: Blocker Blocker
    • Resolution: Fixed
    • Affects Version/s: 2.2.1
    • Fix Version/s: 2.5
    • Component/s: manifest
    • Labels:
      None
    • Environment:
      Maven 3.0.3
      Ubuntu 11.04
      Sun java 6 (1.6.0_26)
    • Number of attachments :
      0

      Description

      According to the documentation, using <addClasspath>true</addClasspath> in archive/manifest, should place the generated classpath in to the manifest. This works with assembly:assembly (now deprecated), but is broken in assembly:single

      Here is my plugin definition section:

      <plugin>
          <groupId>org.apache.maven.plugins</groupId>
          <artifactId>maven-assembly-plugin</artifactId>
          <configuration>
              <descriptors>
                  <descriptor>src/main/assembly/assembly.xml</descriptor>
              </descriptors>
              <archive>
                  <manifest>
                      <mainClass>com.example.Main</mainClass>
                      <addClasspath>true</addClasspath>
                      <classpathPrefix>lib/</classpathPrefix>
                  </manifest>
              </archive>
          </configuration>
          <executions>
              <execution>
                  <phase>package</phase>
                  <goals>
                      <goal>single</goal>
                  </goals>
              </execution>
          </executions>
      </plugin>
      

      and the custom assembly file:

      <assembly>
          <id>full</id>
          <formats>
              <format>jar</format>
          </formats>
          <includeBaseDirectory>false</includeBaseDirectory>
          <dependencySets>
              <dependencySet>
                  <unpack>false</unpack>
                  <scope>runtime</scope>
                  <useProjectArtifact>true</useProjectArtifact>
                  <outputDirectory>lib/</outputDirectory>
              </dependencySet>
          </dependencySets>
          <fileSets>
              <fileSet>
                  <directory>${project.build.outputDirectory}</directory>
                  <outputDirectory>/</outputDirectory>
              </fileSet>
          </fileSets>
      </assembly>
      

      I'm not sure if this is just because the documentation does not correctly address how to do this or if it is actually just broken. I did check the docs and this is how the docs claim you should be able to do this.

        Issue Links

          Activity

          No work has yet been logged on this issue.

            People

            • Assignee:
              Kristian Rosenvold
              Reporter:
              James Davis
            • Votes:
              5 Vote for this issue
              Watchers:
              7 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved: