maven-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Richard Allen (JIRA)" <j...@codehaus.org>
Subject [jira] Commented: (MJAR-7) jar plugin recreates jar files all the time
Date Thu, 17 Aug 2006 19:36:48 GMT
    [ http://jira.codehaus.org/browse/MJAR-7?page=comments#action_72598 ] 
            
Richard Allen commented on MJAR-7:
----------------------------------

Maven 2 has several great features, but the performance as compared to what you can get with
Ant is quite disappointing. Because Maven 2 re-creates and re-installs artifacts (JAR, WAR,
ZIP, whatever) even when no code or POM changes have been made, development multi-module builds
are considerably slower than Ant, which does not recreate a JAR/WAR project if not necessary.
This slows you down when you simply need to make a small change in one project of a multi-project
build and re-build to test the change.

> jar plugin recreates jar files all the time
> -------------------------------------------
>
>                 Key: MJAR-7
>                 URL: http://jira.codehaus.org/browse/MJAR-7
>             Project: Maven 2.x Jar Plugin
>          Issue Type: Bug
>            Reporter: Jochen Wiedmann
>         Attachments: plexus-archiver-up2date.patch
>
>
> The jar plugin doesn't seem to check, whether rebuilding a jar file is actually required.
For daily work, it would be faster to do what Ant's "jar" task does: Compare the timestamps
of the input files with the timestamp of the target file.
> While this approach has the obvious advantage of being safe (and thus possibly well choosen
as a default), it is not appropriate for large projects, where a single build requires a real
lot of jar files being rebuilt, even if only a single source file has been changed. This applies,
in particular, because comparable plugins like the war, ear, and assembly plugin are forced
to behave in the same manner.
> Suggestion:
> - Introduce a new property, for example "maven.build.force". The main idea of the property
would
>   be, that other plugins (install, war, assembly, ...) would listen to the same property.
While they
>   would possible ignore it initially, one could add support later on.
> - The default property value would be true.
> - If the property value is set to false, then the jar plugin compares the timestamps
of the input files with
>   the timestamp of the output file. If the latter is newer than the input timestamps,
then the jar file isn't
>   being rebuilt.
> I am ready to provide a patch, if my suggestion should find interest.

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

        

Mime
View raw message