title: Scala claims I am using different versions of Akka
body: <p><a href="https://github.com/gardncl/scala-sputnik-scraper/tree/e3638b5cdbc24f6a1bcf03d540dae184232b05ca" rel="nofollow noreferrer">View repository at this specific commit here</a></p>
  
  <p>I'm putting together a small SBT project and to learn how to use akka actors. I was able to get a simple example working with just akka, but as soon as I use an external library things stop working. I get a very large stack trace with this </p>
  
  <pre><code>objc[15196]: Class JavaLaunchHelper is implemented in both 
  /Library/Java/JavaVirtualMachines/jdk1.8.0_131.jdk/Contents/Home/bin/java (0x10cc6c4c0) and /Library/Java/JavaVirtualMachines/jdk1.8.0_131.jdk/Contents/Home/jre/lib/libinstrument.dylib (0x10ccf84e0). One of the two will be used. Which one is undefined.
  Detected java.lang.NoSuchMethodError error, which MAY be caused by incompatible Akka versions on the classpath. Please note that a given Akka version MUST be the same across all modules of Akka that you are using, e.g. if you use akka-actor [2.5.8 (resolved from current classpath)] all other core Akka modules MUST be of the same version. External projects like Alpakka, Persistence plugins or Akka HTTP etc. have their own version numbers - please make sure you're using a compatible set of libraries.                 
  Uncaught error from thread [HelloSystem-akka.actor.default-dispatcher-4]: akka.actor.ActorCell.addFunctionRef(Lscala/Function2;)Lakka/actor/FunctionRef;, shutting down JVM since 'akka.jvm-exit-on-fatal-error' is enabled for for ActorSystem[HelloSystem]
  java.lang.NoSuchMethodError: akka.actor.ActorCell.addFunctionRef(Lscala/Function2;)Lakka/actor/FunctionRef;
  </code></pre>
  
  <p>My dependencies look like this:</p>
  
  <pre><code>  object v {
      val akka = "2.5.8"
      val scrape = "0.4.0"
    }
  
    val akka = Seq(
      "com.typesafe.akka" %% "akka-actor" % v.akka,
      "com.typesafe.akka" %% "akka-slf4j" % v.akka
    )
  
    val scrape = Seq(
      "io.bfil" %% "scalescrape" % v.scrape
    )
  
    lazy val allDeps =  akka ++ scrape
  </code></pre>
  
  <p>I am using <a href="https://github.com/bfil/scalescrape" rel="nofollow noreferrer">this library</a> that also uses akka version <code>5.8</code> so what gives? Where could this conflicting version of akka actor be coming from? Here is my <code>build.sbt</code> that includes the conflict manager I attempted using:</p>
  
  <pre><code>import Dependencies._
  
  name := "sputnik-scraper"
  
  version := "0.1"
  
  scalaVersion := "2.12.4"
  
  conflictManager := ConflictManager.strict
  
  dependencyOverrides += "com.typesafe.akka" %% "akka-actor" % "2.5.8"
  
  lazy val root = (project in file(".")).settings(
    libraryDependencies ++= allDeps
  )
  </code></pre>
  
  <p>EDIT: Added code from main. </p>
  
  <pre><code>import akka.actor.{ActorSystem, Props}
  import io.bfil.scalescrape.actor.ScrapingActor
  
  object Main extends App {
  
    val system = ActorSystem("HelloSystem")
    // default Actor constructor
    val helloActor = system.actorOf(Props[ExampleScraper], name = "helloactor")
    helloActor ! "hello"
    helloActor ! "buenos dias"
  }
  
  
  class ExampleScraper extends ScrapingActor {
  
    private val baseUrl = "https://www.sputnikmusic.com/"
  
    override def receive: Receive = {
      case _       =&gt; grabMainTitle(baseUrl)
    }
  
    private def grabMainTitle(url: String) =
      scrape {
            get(url) { response =&gt;
              complete(doIt(response))
            }
      }
  
    private def doIt(response: Any): Unit = {
      println(response)
    }
  }
  </code></pre>