Scala SBT抛出IncompatibleClassChangeError异常

Jon*_*ldt 6 java scala sbt

我已经尝试为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)
Run Code Online (Sandbox Code Playgroud)

我的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)
Run Code Online (Sandbox Code Playgroud)

我通过(home)brew安装了SBT并获得了0.13.9版本.

我试图将Java更新到最新版本,但它没有帮助.当然我已经卸载并重新安装了SBT,无论是否有自制软件,但我得到了同样的错误.我无法弄清楚为什么会出现这种错误.

小智 0

从 Java 扩展目录中删除所有无关的 JAR 文件。在构建BFG Repo-Cleaner并将结果安装bfg.jar到macOS 下的/Library/Java/Extensions后,我遇到了同样的错误。之后,sbt失败并出现上述错误消息,直到从/Library/Java/Extensionsbfg.jar中删除。