Maven
  1. Maven
  2. MNG-4379

Properties defined in parent POM and used in systemPath element cause POM validation warnings and dependencies ignoration - compilation error

    Details

    • Type: Bug Bug
    • Status: Closed Closed
    • Priority: Critical Critical
    • Resolution: Fixed
    • Affects Version/s: 2.1.0, 2.2.1
    • Fix Version/s: 3.0-alpha-6
    • Component/s: POM
    • Labels:
      None
    • Environment:
      Windows Vista 32
    • Complexity:
      Intermediate
    • Testcase included:
      yes
    • Number of attachments :
      1

      Description

      In parent POM of some "common_jar" module we have property definition:

      <properties>
      <WEBSPHERE_HOME>$

      {env.WAS7_HOME}

      </WEBSPHERE_HOME>
      </properties>

      then in child module "common_jar" we use this property

      <!-- WebSphere 7 libraries-->
      <dependency>
      <groupId>com.ibm.ws</groupId>
      <artifactId>webservices.thinclient</artifactId>
      <version>7.0.0</version>
      <systemPath>$

      {WEBSPHERE_HOME}

      /runtimes/com.ibm.ws.webservices.thinclient_7.0.0.jar</systemPath>
      <scope>system</scope>
      </dependency>

      Next we use this "common_jar" as dependency for our "other module":

      <dependency>
      <groupId>our_company.common</groupId>
      <artifactId>common_jar</artifactId>
      <version>1.0-SNAPSHOT</version>
      </dependency>

      but unfortunatelly this "other module" can not be compiled because of

      [WARNING] POM for 'our_company.common:common_jar:pom:1.0.102:compile' is invalid.

      Its dependencies (if any) will NOT be available to the current build.

      This causes that the libraries from "common_jar" are not available to "other module" and therefore "other module" can not be compiled.

      If I replace the WEBSPHERE_HOME's property in "common_jar"'s parent POM with absolute path then "other module" compiles OK. So it seems that it can not read environment properties in "common_jar" from "other module". Module "common_jar" compiles OK under all circumstances (there is no problem with this property in systemPath).

      Other thing is that in parent of "other module" there is also a property WEBSPHERE_HOME defined which points to the same directory as WEBSPHERE_HOME in "common_jar" parent POM (simple copy paste by project creation), but it seems that does not affect the issue. There was no problem with this configuration (setup) in Maven 2.0.10. Problem started with Maven 2.1.0 and continues with Maven 2.2.1. We can not use Maven 2.0.10 due to old version of Maven-Eclipse plugin which is generatin wrong ".settings" for EAR project.

      For test case to run please modify WEBSPHERE_HOME property and WS libraries dependency in "common_jar" and its parent POM.

        Issue Links

          Activity

          Benjamin Bentmann made changes -
          Field Original Value New Value
          Fix Version/s 3.0-alpha-6 [ 15996 ]
          Resolution Fixed [ 1 ]
          Assignee Benjamin Bentmann [ bentmann ]
          Status Open [ 1 ] Closed [ 6 ]
          Benjamin Bentmann made changes -
          Link This issue is duplicated by MNG-4545 [ MNG-4545 ]

            People

            • Assignee:
              Benjamin Bentmann
              Reporter:
              Tomas Szabo
            • Votes:
              1 Vote for this issue
              Watchers:
              2 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved: