web-dev-qa-db-fra.com

Scala repl génère une erreur

Lorsque je tape scala sur le terminal pour démarrer la réplication, cette erreur est générée.

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)

Quand je frappe enter et tapez println("hello, world"), il jette à nouveau cette

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)

J'utilise Ubuntu 14.04 et Java -version donne

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)
56
ajay

Mettez à jour votre version scala (2.10.3+) ou rétrogradez Java en Java 6/7. Comme vous l'avez vu dans la sortie, la version 2.9.2 existait bien avant l'introduction de Java 8 (Copyright 2002-2011, LAMP/EPFL), de sorte qu'ils ne fonctionnent pas bien ensemble.

Cette question en double contient les instructions exactes relatives à la rétrogradation de Java par Ubuntu.

61
om-nom-nom

enlever le scala 2.9.2 en utilisant le terminal 

 Sudo apt-get remove scala 

télécharger la dernière scala depuis le site Web de scala

Les instructions d’installation sont indiquées sur ce lien - link

12

Vous devrez peut-être l'exécuter avec JDK 7 ou 6

1
Rakesh Sharma

La mise à niveau vers une version 7 de JDK a résolu ce problème pour moi. Voici la solution: https://askubuntu.com/questions/761127/how-do-i-install-openjdk-7-on-ubuntu-16-04-or-higher

0
Sabi