title: What's the difference between these Maven dependency scopes: provided/compile/system/import
body: <p>I have read the documentation and have some understanding.</p>
  
  <p>Please correct or inform me of the truth; as per my understanding:</p>
  
  <ul>
  <li><p><code>provided</code><br />The dependencies must will be on the machine you run the code on, and must be included in the path</p></li>
  <li><p><code>compile</code><br />The dependencies will not be on the machine that runs the code, so include them in the build</p></li>
  <li><p><code>system</code><br />Exactly the same as provided, but you need the dependencies to be present in a jar file strictly</p></li>
  <li><p><code>import</code><br />Seems like it should import the dependencies from some other POM file but I don't know how/why, so a little elaboration would be appreciated</p></li>
  </ul>