Scala REPL startup error "class file is broken"

Yehor Nemov picture Yehor Nemov · Sep 17, 2013 · Viewed 11.9k times · Source

Every time after starting Scala 2.9.2 REPL (Java HotSpot(TM) 64-Bit Server VM, Java 1.8.0-ea) first line of code executing bring me an error:

scala> 1 + 2
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 1484)

Later during further evaluation in current REPL instance no similar errors are occured.

Has anyone any suggestion how to handle this behaviour?

Answer

Chemaclass picture Chemaclass · Apr 22, 2014

Try to select other alternative provider java:

$ sudo update-alternatives --config java

There are some choices for the alternative java (providing /usr/bin/java).

  Selection    Path                                            Priority   Status
------------------------------------------------------------
  0            /usr/lib/jvm/java-8-oracle/jre/bin/java          1071      auto mode
  1            /usr/lib/jvm/java-6-openjdk-amd64/jre/bin/java   1061      manual mode
  2            /usr/lib/jvm/java-7-openjdk-amd64/jre/bin/java   1051      manual mode
* 3            /usr/lib/jvm/java-8-oracle/jre/bin/java          1065      manual mode

Press enter to keep the current choice[*], or type selection number: 

EDITED: Scala is now abailable for Java 8 :-)

see http://www.scala-lang.org/news/2013/09/18/release-notes-v2.10.3-RC2.html