Como consertar “métodos estáticos na interface requerem -target: jvm-1.8” no aplicativo Scala?

Dec 08 2020

Escrevi o seguinte código:

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()
}

Quando se trata de compilar, recebo o seguinte erro:

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

Finalmente, usei as seguintes dependências em meu arquivo build.sbt

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

A versão Java é 1.8 e a versão Scala é 2.11.12. Alguma ideia de como consertar isso, por favor?

Respostas

3 TomerShetah Dec 08 2020 at 20:25

Adicione o seguinte ao seu build.sbt:

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

Há uma pergunta semelhante sobre o mesmo erro no Gradle em métodos estáticos na interface require -target: jvm-1.8 .