axis2-aar-maven-plugin fails to build aar while using m2e in workspace 
resolution mode
--------------------------------------------------------------------------------------

                 Key: AXIS2-5206
                 URL: https://issues.apache.org/jira/browse/AXIS2-5206
             Project: Axis2
          Issue Type: Improvement
          Components: Tools
    Affects Versions: 1.6.1, 1.5.6
            Reporter: Chris Gamache
             Fix For: 1.5.7, 1.6.2


First time posting an issue request. Apologies if I'm doing it wrong...

When building in Eclipse using m2e in workspace resolution mode, the 
axis2-aar-maven-plugin is not prepared for a "dependency" which isn't an 
assembly but is instead a folder containing the compiled classes from within 
the local workspace. I propose that if the incoming dependency happens to be a 
directory that it get packaged up and copied to the destination instead of 
blowing up with an exception.

(there is no place to attach a patch, so I'll include a code snippet 
illustrating my idea)

Modifying this function in AbstractAarMojo.java will give the intended result:

    private void copyFileIfModified(File source, File destination)
            throws IOException {
        // TO DO: Remove this method and use the method in WarFileUtils when 
Maven 2 changes
        // to plexus-utils 1.2.
        if (destination.lastModified() < source.lastModified()) {
                if (source.isDirectory()) {
                        JarArchiver jarArchiver = new JarArchiver();
                        try {
                                        jarArchiver.setDestFile( destination );
                                        jarArchiver.addDirectory( 
source.getCanonicalFile() );
                                        jarArchiver.createArchive();
                                } catch (ArchiverException e) {
                                        // wrap ArchiverException in IOException
                                        throw new IOException(e);
                                }
                } else {
                    FileUtils.copyFile(source.getCanonicalFile(), destination);
                    // preserve timestamp
                    destination.setLastModified(source.lastModified());
                }
        }
    }



--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to