Ho provato ad installare SBT per Scala, ma ottenere questo strano eccezione quando avviandolo:Scala SBT gettando eccezione IncompatibleClassChangeError
versioneException in thread "main" java.lang.IncompatibleClassChangeError: Expected static method scala.Predef$.refArrayOps([Ljava/lang/Object;)Lscala/collection/mutable/ArrayOps;
at xsbt.boot.Boot$.main(Boot.scala:11)
at xsbt.boot.Boot.main(Boot.scala)
mio Java è
java version "1.8.0_66"
Java(TM) SE Runtime Environment (build 1.8.0_66-b17)
Java HotSpot(TM) 64-Bit Server VM (build 25.66-b17, mixed mode)
ho installato SBT via (a casa) brew e ha ottenuto la versione 0.13.9.
Ho provato ad aggiornare Java all'ultima versione, ma non aiuta. Ovviamente ho disinstallato e reinstallato SBT, sia con che senza homebrew, ma ottengo lo stesso errore. Non riesco a capire perché questo errore si verifica.
'IncompatibleClassChangeError' indica un problema di incompatibilità binaria. Quale versione di Scala stai usando? Come stai iniziando sbt? Stai iniziando a sbt su un particolare progetto? – moem
Puoi provare lo script sbt 'rebel cut' di PaulP: https://github.com/paulp/sbt-extras - basta salvare quel file da qualche parte ed eseguirlo direttamente come script di shell invece che sbt originale. –
@moem Sono su 'Scala versione 2.11.7'. Corro SBT eseguendo '$ sbt' nella riga di comando. L'errore è lo stesso quando si avvia SBT su un particolare progetto e mentre non lo si fa. @ 0__ Grazie per il suggerimento, ho provato ma produce lo stesso errore come accennato. –