What is the difference between an app dependency and a module dependency/plugin?
<p>When using some 3rd party libraries, I add a dependency to my module's build.gradle file. </p>

<pre><code>    compile 'com.android.support:appcompat-v7:24.1.1'
</code></pre>

<p>Or I add a plugin</p>

<pre><code>    apply plugin: 'com.neenbedankt.android-apt'
</code></pre>

<p>Some other times, the library requires adding a dependency to my app's build.gradle file.</p>

<pre><code>    classpath 'com.neenbedankt.gradle.plugins:android-apt:1.8'
</code></pre>

<p>What is the difference between these dependencies and plugins?<br>
Why can't they all be set in a single build.gradle file?</p>

<p>All suggestions are appreciated, I'm having trouble searching for info on this</p>