a"ppxml attribute is required" error when making ears with the assembly plugin
------------------------------------------------------------------------------

                 Key: MASSEMBLY-345
                 URL: http://jira.codehaus.org/browse/MASSEMBLY-345
             Project: Maven 2.x Assembly Plugin
          Issue Type: Bug
    Affects Versions: 2.2-beta-3
         Environment: all
            Reporter: Petar Tahchiev


So what I am doing is trying to make ears with the assembly plugin. For 
instance here is my assembly descriptor:
====================
<assembly>
        <id>src</id>
        <formats>
                <format>ear</format>
        </formats>      
        <fileSets>
                <fileSet>
                        <useDefaultExcludes>false</useDefaultExcludes>
                        <includes>
                                <include>**</include>
                        </includes>
                </fileSet>
        </fileSets>
</assembly>
====================

But instead, I get the following exception:

[INFO] ------------------------------------------------------------------------
[ERROR] BUILD ERROR
[INFO] ------------------------------------------------------------------------
[INFO] Failed to create assembly: Error creating assembly archive src: appxml 
attribute is required

[INFO] ------------------------------------------------------------------------
[INFO] Trace
org.apache.maven.lifecycle.LifecycleExecutionException: Failed to create 
assembly: Error creating assembly archive src: appxml attribute is required
        at 
org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoals(DefaultLifecycleExecutor.java:583)
        at 
org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoalWithLifecycle(DefaultLifecycleExecutor.java:499)
        at 
org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoal(DefaultLifecycleExecutor.java:478)
        at 
org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoalAndHandleFailures(DefaultLifecycleExecutor.java:330)
        at 
org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeTaskSegments(DefaultLifecycleExecutor.java:291)
        at 
org.apache.maven.lifecycle.DefaultLifecycleExecutor.execute(DefaultLifecycleExecutor.java:142)
        at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:336)
        at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:129)
        at org.apache.maven.cli.MavenCli.main(MavenCli.java:287)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at 
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
        at 
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
        at java.lang.reflect.Method.invoke(Method.java:597)
        at org.codehaus.classworlds.Launcher.launchEnhanced(Launcher.java:315)
        at org.codehaus.classworlds.Launcher.launch(Launcher.java:255)
        at org.codehaus.classworlds.Launcher.mainWithExitCode(Launcher.java:430)
        at org.codehaus.classworlds.Launcher.main(Launcher.java:375)
Caused by: org.apache.maven.plugin.MojoExecutionException: Failed to create 
assembly: Error creating assembly archive src: appxml attribute is required
        at 
org.apache.maven.plugin.assembly.mojos.AbstractAssemblyMojo.execute(AbstractAssemblyMojo.java:368)
        at 
org.apache.maven.plugin.DefaultPluginManager.executeMojo(DefaultPluginManager.java:451)
        at 
org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoals(DefaultLifecycleExecutor.java:558)
        ... 16 more
Caused by: org.apache.maven.plugin.assembly.archive.ArchiveCreationException: 
Error creating assembly archive src: appxml attribute is required
        at 
org.apache.maven.plugin.assembly.archive.DefaultAssemblyArchiver.createArchive(DefaultAssemblyArchiver.java:136)
        at 
org.apache.maven.plugin.assembly.mojos.AbstractAssemblyMojo.execute(AbstractAssemblyMojo.java:322)
        ... 18 more
Caused by: org.codehaus.plexus.archiver.ArchiverException: appxml attribute is 
required
        at 
org.codehaus.plexus.archiver.ear.EarArchiver.initZipOutputStream(EarArchiver.java:90)
        at 
org.codehaus.plexus.archiver.zip.AbstractZipArchiver.createArchiveMain(AbstractZipArchiver.java:340)
        at 
org.codehaus.plexus.archiver.zip.AbstractZipArchiver.execute(AbstractZipArchiver.java:249)
        at 
org.codehaus.plexus.archiver.AbstractArchiver.createArchive(AbstractArchiver.java:762)
        at 
org.apache.maven.plugin.assembly.archive.archiver.AssemblyProxyArchiver.createArchive(AssemblyProxyArchiver.java:496)
        at 
org.apache.maven.plugin.assembly.archive.DefaultAssemblyArchiver.createArchive(DefaultAssemblyArchiver.java:132)
        ... 19 more:
[INFO] ----------------------


The problem is that the mojo uses the EarArchiver class from the plexusArchiver 
component 
(http://fisheye.codehaus.org/browse/~raw,r=7140/plexus/plexus-components/trunk/plexus-archiver/src/main/java/org/codehaus/plexus/archiver/ear/EarArchiver.java)
in which method we see:

        // If no webxml file is specified, it's an error.
        if ( deploymentDescriptor == null && !isInUpdateMode() )
        {
            throw new ArchiverException( "appxml attribute is required" );
        }

It would be great if the assembly plugin provides some way to configure the 
descriptor.

Thanks a lot.

-- 
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

        

Reply via email to