title: Web application using jersey - java.lang.AbstractMethodError
body: <p>I get the following error when I deploy the apps's war on tomcat, and start the application.</p>
  <blockquote>
  <p>SEVERE: Servlet [Jersey Web Application] in web application
  [/reasoner-api] threw load() exception
  java.lang.AbstractMethodError: Receiver class org.glassfish.jersey.internal.config.ExternalPropertiesAutoDiscoverable
  does not define or inherit an implementation of the resolved method
  'abstract void configure(javax.ws.rs.core.FeatureContext)' of
  interface org.glassfish.jersey.internal.spi.AutoDiscoverable.</p>
  </blockquote>
  <p><strong>pom.xml</strong></p>
  <pre><code>  &lt;?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot;?&gt;
      &lt;project xmlns=&quot;http://maven.apache.org/POM/4.0.0&quot;
          xmlns:xsi=&quot;http://www.w3.org/2001/XMLSchema-instance&quot;
          xsi:schemaLocation=&quot;http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd&quot;&gt;
          &lt;modelVersion&gt;4.0.0&lt;/modelVersion&gt;
          &lt;groupId&gt;gr.iti.sodalite&lt;/groupId&gt;
          &lt;artifactId&gt;semantic-reasoner&lt;/artifactId&gt;
          &lt;version&gt;0.0.1-SNAPSHOT&lt;/version&gt;
          &lt;packaging&gt;pom&lt;/packaging&gt;
          &lt;modules&gt;
              &lt;module&gt;reasoning-engine&lt;/module&gt;
              &lt;module&gt;reasoner-api&lt;/module&gt;
          &lt;/modules&gt;
          &lt;properties&gt;
              &lt;jersey2.version&gt;3.0.0-M6&lt;/jersey2.version&gt;
              &lt;jaxrs.version&gt;2.1.1&lt;/jaxrs.version&gt;
              &lt;project.build.sourceEncoding&gt;UTF-8&lt;/project.build.sourceEncoding&gt;
          &lt;/properties&gt;
           &lt;dependencyManagement&gt;
              &lt;dependencies&gt;
                  &lt;dependency&gt;
                      &lt;groupId&gt;org.glassfish.jersey&lt;/groupId&gt;
                      &lt;artifactId&gt;jersey-bom&lt;/artifactId&gt;
                      &lt;version&gt;${jersey2.version}&lt;/version&gt;
                      &lt;type&gt;pom&lt;/type&gt;
                      &lt;scope&gt;import&lt;/scope&gt;
                  &lt;/dependency&gt;
              &lt;/dependencies&gt;
          &lt;/dependencyManagement&gt;
          
          &lt;dependencies&gt;
              &lt;dependency&gt;
                  &lt;groupId&gt;junit&lt;/groupId&gt;
                  &lt;artifactId&gt;junit&lt;/artifactId&gt;
                  &lt;version&gt;3.8.1&lt;/version&gt;
                  &lt;scope&gt;test&lt;/scope&gt;
              &lt;/dependency&gt;
              &lt;!-- https://mvnrepository.com/artifact/com.sun.jersey/jersey-bundle --&gt;
              &lt;!--&gt;dependency&gt;
                  &lt;groupId&gt;com.sun.jersey&lt;/groupId&gt;
                  &lt;artifactId&gt;jersey-bundle&lt;/artifactId&gt;
                  &lt;version&gt;1.19&lt;/version&gt;
              &lt;/dependency--&gt;
      
              &lt;!-- https://mvnrepository.com/artifact/com.sun.jersey/jersey-servlet --&gt;
              &lt;!-- dependency&gt;
                  &lt;groupId&gt;com.sun.jersey&lt;/groupId&gt;
                  &lt;artifactId&gt;jersey-servlet&lt;/artifactId&gt;
                  &lt;version&gt;1.19&lt;/version&gt;
              &lt;/dependency--&gt;
              
              &lt;!-- https://mvnrepository.com/artifact/io.swagger/swagger-jersey2-jaxrs --&gt;
              &lt;dependency&gt;
                  &lt;groupId&gt;io.swagger&lt;/groupId&gt;
                  &lt;artifactId&gt;swagger-jersey2-jaxrs&lt;/artifactId&gt;
                  &lt;version&gt;1.6.2&lt;/version&gt;
              &lt;/dependency&gt;
              
              &lt;dependency&gt;
                  &lt;groupId&gt;org.eclipse.rdf4j&lt;/groupId&gt;
                  &lt;artifactId&gt;rdf4j-runtime&lt;/artifactId&gt;
                  &lt;version&gt;3.4.3&lt;/version&gt;
                   &lt;type&gt;pom&lt;/type&gt;
              &lt;/dependency&gt;
              &lt;!-- &lt;dependency&gt; --&gt;
              &lt;!-- &lt;groupId&gt;org.eclipse.rdf4j&lt;/groupId&gt; --&gt;
              &lt;!-- &lt;artifactId&gt;rdf4j-sparqlbuilder&lt;/artifactId&gt; --&gt;
              &lt;!-- &lt;version&gt;3.0.0&lt;/version&gt; --&gt;
              &lt;!-- &lt;/dependency&gt; --&gt;
              &lt;dependency&gt;
                  &lt;groupId&gt;joda-time&lt;/groupId&gt;
                  &lt;artifactId&gt;joda-time&lt;/artifactId&gt;
                  &lt;version&gt;2.10.8&lt;/version&gt;
              &lt;/dependency&gt;
              &lt;dependency&gt;
                  &lt;groupId&gt;com.ontotext.graphdb&lt;/groupId&gt;
                  &lt;artifactId&gt;graphdb-free-runtime&lt;/artifactId&gt;
                  &lt;version&gt;9.4.0&lt;/version&gt;
              &lt;/dependency&gt;
              &lt;dependency&gt;
                  &lt;groupId&gt;com.google.code.gson&lt;/groupId&gt;
                  &lt;artifactId&gt;gson&lt;/artifactId&gt;
                  &lt;version&gt;2.8.6&lt;/version&gt;
              &lt;/dependency&gt;
      
              &lt;dependency&gt;
                  &lt;groupId&gt;org.junit.jupiter&lt;/groupId&gt;
                  &lt;artifactId&gt;junit-jupiter-api&lt;/artifactId&gt;
                  &lt;version&gt;5.1.0&lt;/version&gt;
                  &lt;scope&gt;test&lt;/scope&gt;
              &lt;/dependency&gt;
              &lt;dependency&gt;
                  &lt;groupId&gt;org.junit.jupiter&lt;/groupId&gt;
                  &lt;artifactId&gt;junit-jupiter-engine&lt;/artifactId&gt;
                  &lt;version&gt;5.1.0&lt;/version&gt;
                  &lt;scope&gt;test&lt;/scope&gt;
              &lt;/dependency&gt;
          &lt;/dependencies&gt;
          &lt;build&gt;
              &lt;finalName&gt;reasoner-api&lt;/finalName&gt;
              &lt;plugins&gt;
                  &lt;plugin&gt;
                      &lt;artifactId&gt;maven-compiler-plugin&lt;/artifactId&gt;
                      &lt;version&gt;3.8.0&lt;/version&gt;
                      &lt;configuration&gt;
                          &lt;source&gt;11&lt;/source&gt;
                          &lt;target&gt;11&lt;/target&gt;
                      &lt;/configuration&gt;
                  &lt;/plugin&gt;
                  &lt;plugin&gt;
                      &lt;groupId&gt;org.apache.maven.plugins&lt;/groupId&gt;
                      &lt;artifactId&gt;maven-javadoc-plugin&lt;/artifactId&gt;
                      &lt;version&gt;3.2.0&lt;/version&gt;
                      &lt;executions&gt;
                          &lt;execution&gt;
                          &lt;id&gt;attach-javadocs&lt;/id&gt;
                              &lt;goals&gt;
                                  &lt;goal&gt;jar&lt;/goal&gt;
                              &lt;/goals&gt;
                          &lt;/execution&gt;
                      &lt;/executions&gt;
                           &lt;!--  configuration&gt;
                       &lt;source&gt;8&lt;/source&gt;
                       &lt;javadocExecutable&gt;${java.home}/bin/javadoc&lt;/javadocExecutable&gt; 
                      &lt;/configuration--&gt;
                      
                  &lt;/plugin&gt;
                  &lt;plugin&gt;
                      &lt;groupId&gt;org.apache.maven.plugins&lt;/groupId&gt;
                      &lt;artifactId&gt;maven-surefire-plugin&lt;/artifactId&gt;
                      &lt;version&gt;2.22.0&lt;/version&gt;
                  &lt;/plugin&gt;
                  &lt;plugin&gt;
                      &lt;groupId&gt;org.apache.maven.plugins&lt;/groupId&gt;
                      &lt;artifactId&gt;maven-failsafe-plugin&lt;/artifactId&gt;
                      &lt;version&gt;2.22.0&lt;/version&gt;
                  &lt;/plugin&gt;
                  
                  &lt;plugin&gt;
                      &lt;groupId&gt;org.jacoco&lt;/groupId&gt;
                      &lt;artifactId&gt;jacoco-maven-plugin&lt;/artifactId&gt;
                      &lt;version&gt;0.8.5&lt;/version&gt;
                      &lt;executions&gt;
                          &lt;execution&gt;
                          &lt;goals&gt;
                              &lt;goal&gt;prepare-agent&lt;/goal&gt;
                          &lt;/goals&gt;
                          &lt;/execution&gt;
                          &lt;!-- attached to Maven test phase --&gt;
                          &lt;execution&gt;
                              &lt;id&gt;report&lt;/id&gt;
                              &lt;phase&gt;test&lt;/phase&gt;
                              &lt;goals&gt;
                                  &lt;goal&gt;report&lt;/goal&gt;
                              &lt;/goals&gt;
                          &lt;/execution&gt;
                      &lt;/executions&gt;
                  &lt;/plugin&gt;
              &lt;/plugins&gt;
          &lt;/build&gt;
      
      
      &lt;/project&gt;
  </code></pre>
  <p><strong>web.xml</strong></p>
  <p><div class="snippet" data-lang="js" data-hide="false" data-console="true" data-babel="false">
  <div class="snippet-code">
  <pre class="snippet-code-html lang-html prettyprint-override"><code>&lt;!DOCTYPE web-app PUBLIC
   "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN"
   "http://java.sun.com/dtd/web-app_2_3.dtd" &gt;
  
  &lt;web-app&gt;
      &lt;display-name&gt;Archetype Created Web Application&lt;/display-name&gt;
  
  
      &lt;servlet&gt;
          &lt;servlet-name&gt;Jersey Web Application&lt;/servlet-name&gt;
          &lt;!-- For Jersey 1.x --&gt;
          &lt;!-- servlet-class&gt;com.sun.jersey.spi.container.servlet.ServletContainer&lt;/servlet-class--&gt;
          &lt;!-- For Jersey 2.x --&gt;
          &lt;servlet-class&gt;org.glassfish.jersey.servlet.ServletContainer&lt;/servlet-class&gt;
          &lt;init-param&gt;            
              &lt;param-name&gt;jersey.config.server.provider.packages&lt;/param-name&gt;
              &lt;param-value&gt;
                  io.swagger.jaxrs.listing,
                  restapi
              &lt;/param-value&gt;
          &lt;/init-param&gt;
  
          &lt;load-on-startup&gt;1&lt;/load-on-startup&gt;
      &lt;/servlet&gt;
  
  
      &lt;servlet-mapping&gt;
          &lt;servlet-name&gt;Jersey Web Application&lt;/servlet-name&gt;
          &lt;url-pattern&gt;/v0.6/*&lt;/url-pattern&gt;
      &lt;/servlet-mapping&gt;
  &lt;/web-app&gt;</code></pre>
  </div>
  </div>
  </p>