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

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

This now works in trunk.

> Setting property in profiles is not evaluated for POM validation
> ----------------------------------------------------------------
>
>                 Key: MNG-2632
>                 URL: http://jira.codehaus.org/browse/MNG-2632
>             Project: Maven 2 & 3
>          Issue Type: Bug
>          Components: POM
>    Affects Versions: 2.0.4
>         Environment: WinXP
>            Reporter: Christoph Amshoff
>             Fix For: 3.x
>
>         Attachments: fix.patch
>
>
> There seems to be a problem concerning POM validation and setting properties 
> in profiles.xml: when I set a property in my profiles.xml it is not evaluated 
> for POM validation in a multi module build. 
> The details: My project C depends on module B, which itself is a child of 
> module A. Module A defines a system scope dependency like this: 
> {code}
> <dependency> 
>   <groupId>db2</groupId> 
>   <artifactId>db2</artifactId> 
>   <version>8.2</version> 
>   <scope>system</scope> 
>   <systemPath>${path.db2jar}</systemPath> 
> </dependency>
> {code}
> The path to db2.jar depends on the developer's machine and is specified in 
> the profiles.xml, toghether with other settings. Both A and B are building 
> and deploying fine. 
> Now, when I try to build C, it complains about missing definition for 
> 'path.db2jar': 
> {code}
> [WARNING] POM for '...B:pom:4.4.0-SNAPSHOT:compile' is invalid. It will be 
> ignored for artifact resolution. Reason: 
> Failed to validate POM 
> [DEBUG] Reason: Failed to validate POM 
> [DEBUG] 
> Validation Errors: 
> [DEBUG] For dependency Dependency {groupId=db2, artifactId=db2, version=8.2, 
> type=jar}: system-scoped dependency 
> must specify an absolute path systemPath. 
> {code}
> I'm using a profiles.xml section like this one: 
> {code}
> <profile> 
>   <id>env-nb</id> 
>   <activation> 
>     <property> 
>       <name>env</name> 
>       <value>nb</value> 
>     </property> 
>   </activation> 
>   <properties> 
>     <path.db2jar>c:/programme/IBM/SQLLIB/java/db2java.zip</path.db2jar> 
>     ... 
>   </properties> 
> </profile> 
> {code}
> which is triggered by -Denv=nb, and this activation is working fine since 
> 'help:effective-pom' is correctly showing me something like 
> {code}
> <properties> 
>   <path.db2jar>c:/programme/IBM/SQLLIB/java/db2java.zip</path.db2jar> 
>   ... 
> </properties> 
> {code}
> So the profiles.xml seems to be evaluated correctly, but the property is not 
> used for validating the POM of dependent modules.
> And yes, when I run Maven without the profiles.xml, but with specifying the 
> property on command line (like '-Dpath.db2jar=...'), all is working fine! But 
> that's not exactly what we want, since profiles are meant to encapsulate 
> those kind of settings... 

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

        

Reply via email to