Adding HATEOAS to a Maven project with pre-existing Spring dependencies
<p>I am trying to add Spring HATEOAS to a Maven project with pre-existing Spring dependencies.  This immediately caused compile-time issues which I solved by adding exclusions:</p>

<pre><code>&lt;dependency&gt;
    &lt;groupId&gt;org.springframework.hateoas&lt;/groupId&gt;
    &lt;artifactId&gt;spring-hateoas&lt;/artifactId&gt;
    &lt;version&gt;0.19.0.RELEASE&lt;/version&gt;
    &lt;exclusions&gt;
      &lt;exclusion&gt;
        &lt;groupId&gt;org.springframework&lt;/groupId&gt;
        &lt;artifactId&gt;spring-web&lt;/artifactId&gt;
      &lt;/exclusion&gt;
      &lt;exclusion&gt;
        &lt;groupId&gt;org.springframework&lt;/groupId&gt;
        &lt;artifactId&gt;spring-beans&lt;/artifactId&gt;
      &lt;/exclusion&gt;
    &lt;/exclusions&gt;
&lt;/dependency&gt;
</code></pre>

<p>However now I have a runtime exception caused by a missing class called PluginRegistry:</p>

<pre><code>Caused by: java.lang.ClassNotFoundException: org.springframework.plugin.core.PluginRegistry
at java.net.URLClassLoader$1.run(URLClassLoader.java:372)
at java.net.URLClassLoader$1.run(URLClassLoader.java:361)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:360)
at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:308)
at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
at org.eclipse.jetty.webapp.WebAppClassLoader.loadClass(WebAppClassLoader.java:487)
at org.eclipse.jetty.webapp.WebAppClassLoader.loadClass(WebAppClassLoader.java:428)
... 36 more
</code></pre>

<p>What is the missing dependency or dependencies that I need to add? Are they runtime or provided dependencies?</p>

<p>Thanks!</p>