我已尝试为Scala安装SBT,但在启动它时会遇到这个奇怪的异常:
Exception 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)
我的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)
我通过(home)brew安装了SBT并获得了0.13.9版本。
我尝试将Java更新到最新版本,但它没有帮助。 当然我已经卸载并重新安装了SBT,无论是否有自制软件,但我得到了同样的错误。我无法弄清楚为什么会出现这种错误。
答案 0 :(得分:0)
从Java Extensions目录中删除任何无关的JAR文件。在构建 BFG Repo-Cleaner 然后将生成的bfg.jar
安装到macOS下的 / Library / Java / Extensions 中后,我遇到了同样的错误。之后,sbt
失败并显示上述错误消息,直到从 / Library / Java / Extensions 中删除bfg.jar
。