title: Maven system property priority
body: <p>I have following pom.xml</p>
  
  <pre><code>&lt;project&gt;
    &lt;properties&gt;
      &lt;buildNumber&gt;dev&lt;/buildNumber&gt;
    &lt;/properties&gt;
    &lt;build&gt;
      &lt;finalName&gt;${project.artifactId}-${project.version}-${buildNumber}&lt;/finalName&gt;
    &lt;/build&gt;
  &lt;/project&gt;
  </code></pre>
  
  <p>This works fine on development machine. If I run <code>mvn package</code> I've got <code>project-1.1-dev.war</code> artifact. If I run <code>mvn package -DbuildNumber=121</code> I've got <code>package-1.1-121.war</code>.</p>
  
  <p>But out CI server (TeamCity) always got <code>project-1.1-dev.war</code> despite the fact that <code>buildNumber</code> property passed to maven (if I remove default property definition from <code>pom.xml</code>, maven builds artifact with correct filename).</p>
  
  <p>It seems that system property resolve priority is somehow depends on platform (maven version is equals on both developer machine and TC - 2.2.1)?</p>