Comment réparer «les méthodes statiques dans l'interface nécessitent -target: jvm-1.8» dans l'application Scala?

Dec 08 2020

J'ai écrit le code suivant:

import software.amazon.awssdk.services.cloudwatchlogs.CloudWatchLogsClient

class Test() extends CloudWatchLogsClient {
  CloudWatchLogsClient.builder().build()
  def close():Unit = {
    println("test")
  }

  def serviceName(): String  = "serviceName"
  CloudWatchLogsClient.create()
}

En ce qui concerne la compilation, j'obtiens l'erreur suivante:

Static methods in interface require -target:jvm-1.8
  CloudWatchLogsClient.builder().build()

Enfin, j'ai utilisé les dépendances suivantes dans mon fichier build.sbt

libraryDependencies += "software.amazon.awssdk" % "cloudwatch" % "2.15.40",
libraryDependencies += "software.amazon.awssdk" % "cloudwatchlogs" % "2.15.40"

La version Java est 1.8 et la version Scala est 2.11.12. Une idée, comment résoudre ce problème s'il vous plaît?

Réponses

3 TomerShetah Dec 08 2020 at 20:25

Veuillez ajouter ce qui suit dans votre build.sbt:

scalacOptions in ThisBuild += "-target:jvm-1.8"

Il y a une question similaire concernant la même erreur chez Gradle aux méthodes statiques dans l'interface nécessitent -target: jvm-1.8 .