title: java.lang.AbstractMethodError running a webapp in Eclipse with jetty.
body: <p>I am working on a project in eclipse that when I launch using the jetty plugin gives me a </p>
  
  <pre><code>java.lang.AbstractMethodError: 
  au.com.mycopmpany.impl.MyClassDAOImpl.findById(Ljava/lang/Integer;)Ljava/lang/Object;.
  </code></pre>
  
  <p>This file compiles fine in Eclipse and the code is implementing the method that the error talks about.  From my reading this error indicates that "at runtime" the JVM finds a class that doesn't have this method implemented.</p>
  
  <p>But I can assure you that the <code>MyClassDAOImpl</code> most definitely does have the <code>findById</code> method implemented with the correct signature.</p>
  
  <p>This seems like a bug in the Eclipse compiler; I can fix the issue by running <code>maven package</code> from a command prompt and then running the application within Eclipse works fine.</p>
  
  <p>It seems that the Eclipse compiler has some sort of bug in relation to this class. I did read something online about a bug with generics in the Eclipse compiler (which this class does use Generics) but this base class / interface is re-implemented over and over in our code base and it is this class that always has problems.</p>
  
  <p>Does anyone know a workaround, or better yet, a fix for this problem?</p>
  
  <p>I can replicate this exception every time, so if an Eclipse compiler developer reads this and this is a known issue, please feel free to contact me for assistance in tracking down the issue.</p>
  
  <p><strong>Update:</strong></p>
  
  <p>The class with the issue is one of many that implement <code>GenericDAO</code> where the Generic interface is defined as:</p>
  
  <pre><code>public interface GenericDAO&lt;T, TList&gt; 
  </code></pre>
  
  <p>The method in question that is failing is:</p>
  
  <pre><code>public T findById(Integer integer) throws APIException;   
  </code></pre>