title: NoSuchMethodException in MaxMind GeoIp dependency jackson-databind built with mvn shade
body: <p>I'm trying to run MaxMind's geoIP in a spark task, but I'm getting a NoSuchMethodException from a maxmind call to a jackson-databind library. I've removed all other versions of jackson-databind using mvn exclusions, yet the error persists after a mvn clean. What am I missing?</p>
  
  <p>No dependency conflicts: </p>
  
  <p><code>mvn dependency:tree -Dverbose -Dincludes=com.fasterxml.jackson.core:jackson-databind
  ...
  [INFO] --- maven-dependency-plugin:2.8:tree (default-cli) @ sift-etl ---
  [INFO] com.sift.etl:sift-etl:jar:0.1.6
  [INFO] \- com.maxmind.geoip2:geoip2:jar:2.6.0:compile
  [INFO]    \- com.maxmind.db:maxmind-db:jar:1.2.0:compile
  [INFO]       \- com.fasterxml.jackson.core:jackson-databind:jar:2.7.0:compile
  </code></p>
  
  <p>Error:</p>
  
  <p><code>Exception in thread "main" java.lang.NoSuchMethodError: com.fasterxml.jackson.databind.node.ArrayNode.&lt;init&gt;(Lcom/fasterxml/jackson/databind/node/JsonNodeFactory;Ljava/util/List;)V
          at com.maxmind.db.Decoder.decodeArray(Decoder.java:272)
  </code></p>
  
  <p>Edit: I have a ton of <code>org.codehaus.jackson</code>, do I need to exclude these as well? How can I resolve the differences in namespaces?</p>
  
  <p>Edit: This is built into a scala based project that runs in Apache Spark. The jar is compiled into a shaded jar using maven-shade-plugin 2.4</p>
  
  <p>Edit: 
  Here's the complete output for jar tvf on the shaded jar:
  <a href="https://drive.google.com/file/d/0B2ZVKNsRXgTbeUdEU2ZhM2J3dmc/view?usp=sharing" rel="noreferrer">https://drive.google.com/file/d/0B2ZVKNsRXgTbeUdEU2ZhM2J3dmc/view?usp=sharing</a></p>
  
  <p>Here's the result of a grep for jackson-databind:
  <code>
       0 Mon Jan 25 09:53:54 PST 2016 META-INF/maven/com.fasterxml.jackson.core/jackson-databind/
     151 Mon Jan 25 09:53:54 PST 2016 META-INF/maven/com.fasterxml.jackson.core/jackson-databind/pom.properties
    5192 Mon Jan 25 09:53:54 PST 2016 META-INF/maven/com.fasterxml.jackson.core/jackson-databind/pom.xml
  </code></p>
  
  <p>and ArrayNode:
  <code>/usr/lib/jvm/sift-jdk1.8.0_66/bin/jar -tvf target/sift-etl-0.1.6-shaded.jar | grep ArrayNode
   15060 Sat Jan 23 01:33:14 UTC 2016 shaded/parquet/org/codehaus/jackson/node/ArrayNode.class
    1309 Sat Jan 23 01:33:18 UTC 2016 org/apache/lucene/index/DocumentsWriterDeleteQueue$QueryArrayNode.class
    1645 Sat Jan 23 01:33:18 UTC 2016 org/apache/lucene/index/DocumentsWriterDeleteQueue$TermArrayNode.class
   18145 Sat Jan 23 01:33:20 UTC 2016 com/fasterxml/jackson/databind/node/ArrayNode.class
    1058 Sat Jan 23 01:33:22 UTC 2016 org/apache/commons/configuration/plist/XMLPropertyListConfiguration$ArrayNode.class
  </code></p>
  
  <p>Initializing and querying the maxmind GeoIP DB runs successfully in tests. The error only occurs in production when run as a spark task -- after it has been packaged using maven-shade.</p>
  
  <p>maven-shade plugin config: <a href="http://pastebin.com/QzrhM5Ee" rel="noreferrer">http://pastebin.com/QzrhM5Ee</a></p>
  
  <p>Is it meaningful that the shaded jar doesn't contain the jackson-databind jar, but all of the *.class files within the jar?</p>