ScalaFX 12 is the current actively maintained version. ScalaFX 12 is intended to support Java 11 and newer. Staring with Java 11 JavaFX is no longer part of Java distribution. In addition to ScalaFX, JavaFX binaries needs to be explicitly added to a project. JavaFX binaries depend on operating system used. Add following to SBT configuration:
// Add dependency on ScalaFX library libraryDependencies += "org.scalafx" %% "scalafx" % "12.0.2-R18" // Determine OS version of JavaFX binaries lazy val osName = System.getProperty("os.name") match { case n if n.startsWith("Linux") => "linux" case n if n.startsWith("Mac") => "mac" case n if n.startsWith("Windows") => "win" case _ => throw new Exception("Unknown platform!") } // Add dependency on JavaFX libraries, OS dependent lazy val javaFXModules = Seq("base", "controls", "fxml", "graphics", "media", "swing", "web") libraryDependencies ++= javaFXModules.map( m => "org.openjfx" % s"javafx-$m" % "12.0.2" classifier osName )