title: Overwrite property in Maven Without Tokenization
body: <p>I would like to set a property in Maven, but also read a sensible default when running the application without Maven. </p>
  
  <p>Currently I have a property file which looks like this:</p>
  
  <pre><code>baseUrl=${baseUrl}
  </code></pre>
  
  <p>Using the <strong>maven-resources-plugin</strong>, I can then filter this property, and set it to either the default property in the pom, or overwrite it using <code>-DbaseUrl=</code> from the command line. So far so good.  </p>
  
  <p>However, I want to go a step further and set a sensible default to <code>baseUrl</code> in the property file without having to write hacks in code like this (when the code is run without Maven in a Unit Test): </p>
  
  <pre><code> if ("${baseUrl}".equals(baseUrl)){ /* set to default value */ } 
  </code></pre>
  
  <p>Even better, I would like this file to be unversioned such that every developer can set their own value. 
  (Actually property files should be hierarchical such that developers only overwrite relevant properties and new properties don't break their build. This is an Android project by the way, and I'm running this code in unit tests) </p>