[
http://jira.codehaus.org/browse/MNG-3331?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Vincent Siveton updated MNG-3331:
---------------------------------
Fix Version/s: 2.1-alpha-1
2.0.9
> Normalize paths to sub modules
> ------------------------------
>
> Key: MNG-3331
> URL: http://jira.codehaus.org/browse/MNG-3331
> Project: Maven 2
> Issue Type: Improvement
> Components: Reactor and workspace
> Affects Versions: 2.0.8
> Reporter: Benjamin Bentmann
> Fix For: 2.0.9, 2.1-alpha-1
>
> Attachments: normalized-module-file.patch
>
>
> When collecting the sub modules during a reactor build, the path to the
> module POMs should always be normalized. Currently, this happens only on a
> Windows platform via File.getCanonicalFile(). The attached patch adds
> normalization (but not canonicalization) for other platforms, too.
> The motivation: Consider a multi module project with the following directory
> structure:
> project/
> project-parent/
> project-module/
> such that the parent POM in project-parent will contain
> <module>../project-module</module>
> to reference the sub module. Simple string/path concatenation will therefore
> deliver a path like
> {SNIP}/project-parent/../project-module
> for the sub module. Having
> {SNIP}/project-module
> instead is surely better, and may it be just for nice log output.
> However, certain plugins/tools try to detect symlinks by comparing the
> canonicalized path with the absolute path of a file. While users of
> DirectoryScanner are usually fine because this class always canonicalizes the
> base directory before the check, code that does not know about a base
> directory but simply gets a single file will erroneously detect a symlink
> because ".." gets removed during canonicalization.
> This actually happens with the CpdReport of the maven-pmd-plugin. See
> [CPD.addFile(int,
> File)|http://pmd.svn.sourceforge.net/viewvc/pmd/trunk/pmd/src/net/sourceforge/pmd/cpd/CPD.java?view=markup]
> for the cause, i.e. the code near line 97 where it prints "Skipping {file}
> since it appears to be a symlink".
--
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