Scala repl 抛出错误

2022-08-31 17:01:01

当我在终端上键入以启动 repl 时,它会抛出此错误scala

scala> [init] error: error while loading AnnotatedElement, 
class file '/usr/lib/jvm/java-8-oracle/jre/lib/rt.jar
(java/lang/reflect/AnnotatedElement.class)' 
is broken (bad constant pool tag 15 at byte 2713)

当我点击并打字时,它再次抛出这个enterprintln("hello, world")

error: error while loading CharSequence, 
class file '/usr/lib/jvm/java-8-oracle/jre/lib/rt.jar
(java/lang/CharSequence.class)' is broken
(bad constant pool tag 15 at byte 1501)

我正在使用并给予Ubuntu 14.04java -version

java version "1.8.0_05"
Java(TM) SE Runtime Environment (build 1.8.0_05-b13)
Java HotSpot(TM) 64-Bit Server VM (build 25.5-b02, mixed mode)

答案 1

要么更新到更新的 scala 版本 (2.10.3+),要么将 java 降级到 java 6/7。正如你在输出中看到的,2.9.2 早在 java 8 被引入之前就已经存在了(),所以它们不能很好地协同工作。Copyright 2002-2011, LAMP/EPFL

这个重复的问题包含有关ubuntu的java降级的确切说明。


答案 2

使用终端删除 scala 2.9.2

 sudo apt-get remove scala 

从 scala 网站下载最新的 scala

链接上给出了安装说明


推荐