maven-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Jason van Zyl (JIRA)" <j...@codehaus.org>
Subject [jira] Commented: (MNG-2854) Recreating pom.properties always breaks the archivers uptodate check
Date Thu, 22 Mar 2007 14:42:36 GMT

    [ http://jira.codehaus.org/browse/MNG-2854?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_90820
] 

Jason van Zyl commented on MNG-2854:
------------------------------------

Point one is fine.

Point two is not fine. One artifact and so many people expect the pom.properties file and
is what we document. That can't change and I will never support the widespread production
of multiple artifacts.

Point three is fine.

Fix up the second point and I will apply the patch. Also, how did you test this?

> Recreating pom.properties always breaks the archivers uptodate check
> --------------------------------------------------------------------
>
>                 Key: MNG-2854
>                 URL: http://jira.codehaus.org/browse/MNG-2854
>             Project: Maven 2
>          Issue Type: Bug
>          Components: maven-archiver
>    Affects Versions: 2.0.5
>            Reporter: Jochen Wiedmann
>         Attachments: maven-archiver-properties.patch
>
>
> The maven-archiver creates a file called pom.properties on every invocation. (Unless
the flag "addMavenDescriptor" is set to false, which few people do.) This forced recreation
makes the uptodate check fail. In other words, jar files are always recreated, regardless
whether anything was recompiled. Obviously, this makes the uptodate check of war files etc.
fail as well, because the included jar files are always changed.. This is a major drawback,
because it makes Maven much slower than, for example, Ant-.
> The attached patch proposes a solution for the same problem. What the patch does:
> - It is obviously bad, that the generated pom.properties file is in the projects directory.
The
>   patch moves the file to ${project.build.directory}/maven-archiver, which seems to me
to
>   be a more sensible solution.
> - Second, whether we like it or not, there are projects, which create multiple artifacts.
In other
>   words, it isn't good to have a single file. The patch renames the pom.properties file
to
>   ${groupId}/$artifactFinalName.properties. Hopefully, this is sufficiently unique.
> - Finally, the patch makes the maven-archiver check, whether the pom.properties file
has
>   actually changed. (In other words, whether groupId, artifactId, or version have changed.)
>   It does so, by writing the file to an internal buffer and comparing the file on the
disk and
>   the internal buffer (after skipping the line with the timestamp).
> In other words, in the usual case, where groupId, artifactId and version haven't changed,
the pom.properties file remains unchanged. In particular, the jar file doesn't need to be
recreated.

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