You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@maven.apache.org by "Karel Vervaeke (JIRA)" <ji...@codehaus.org> on 2010/01/29 09:21:55 UTC

[jira] Commented: (MNG-1775) No property expansion in profile activation

    [ http://jira.codehaus.org/browse/MNG-1775?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=208576#action_208576 ] 

Karel Vervaeke commented on MNG-1775:
-------------------------------------

Does anyone have a good workaround for this?
How do you activate a profile based on the existance of a file whose path is relative to the pom?

> No property expansion in profile activation
> -------------------------------------------
>
>                 Key: MNG-1775
>                 URL: http://jira.codehaus.org/browse/MNG-1775
>             Project: Maven 2 & 3
>          Issue Type: Bug
>          Components: Inheritance and Interpolation
>    Affects Versions: 2.0, 2.0.1
>         Environment: Linux
>            Reporter: Eric Andresen
>             Fix For: 3.0-alpha-7
>
>         Attachments: test.zip
>
>
> I have a profile specified in the pom.xml of a project. It is inteded to be activated based on the presence or absence of a file, using the <file> profile activator.
> The profiles are simple:
>       <profile>
>           <id>metis</id>
>           <activation>
>               <file><missing>${basedir}/../build.properties</missing></file>
>           </activation>
>           <build>
>               <filters><filter>${basedir}/../build.properties.metis</filter></filters>
>           </build>
>       </profile>
>       <profile>
>           <id>dev</id>
>           <activation>
>               <file><exists>${basedir}/../build.properties</exists></file>
>           </activation>
>           <build>
>               <filters><filter>${basedir}/../build.properties</filter></filters>
>           </build>
>       </profile>
> The problem comes in with ${basedir} -- it isn't being expanded for purposes of evaluating the file. It's trying to look for a file named "${basedir}/../build.properties", rather than "/home/joe/projectX/projY/../build.properties"; as a result, the "missing" directive is always true, and the dev profile is never activated. When the filter path is evaluated, the ${basedir} property *is* evaluated, however.

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