title: Gradle dependency scopes
body: <p>I was experimenting a little bit with Gradle but as mainly being a Maven user, some dependency scopes are confusing me …</p>
  
  <p>Some are identical to Maven:</p>
  
  <pre><code>compile -&gt; compile
  runtime -&gt; runtime
  compileOnly -&gt; provided
  </code></pre>
  
  <p>but I also encounter <code>implementation</code> which sounds like the <code>parent</code> element of Maven POM but then again also not.</p>
  
  <p>Can somebody explain me what is <code>implementation</code> and some other if they exist and I didn’t mention here (test versions of above are clear no need to explain)?</p>
  
  <p>And if <code>implementation</code> is not like parent on Maven, how can we have the parent POM effect of Maven in Gradle?</p>