为了账号安全,请及时绑定邮箱和手机立即绑定

scala EPFL Exception in thread “main” java.lang

scala EPFL Exception in thread “main” java.lang

慕妹3146593 2022-08-17 15:42:47
我是Scala和JVM编程的完全新手。我最近加入的团队使用 scala 来构建要在 Spark 上运行的程序。工作的堆栈是稳定和功能性的,但它的复杂性与我在家里的需求不匹配:只是一个拥有功能性的scala shell来更熟悉语言,尝试一些事情,在添加任何“环境复杂性”之前获得正确的语法"[注]我只是想要一些与本文档相同的东西(所以,请不要根据编译器,sbt,IDE等来回答)david@ripper$ java -versionopenjdk version "1.8.0_181"OpenJDK Runtime Environment (build 1.8.0_181-8u181-b13-2~deb9u1-b13)OpenJDK 64-Bit Server VM (build 25.181-b13, mixed mode)david@ripper$ scala -version Scala code runner version 2.11.8 -- Copyright 2002-2016, LAMP/EPFL这是我在吃贝壳时得到的david@ripper$ scala Exception in thread "main" java.lang.NoClassDefFoundError: javax/script/Compilableat scala.tools.nsc.interpreter.ILoop.createInterpreter(ILoop.scala:118)at scala.tools.nsc.interpreter.ILoop$$anonfun$process$1.apply$mcZ$sp(ILoop.scala:911)at scala.tools.nsc.interpreter.ILoop$$anonfun$process$1.apply(ILoop.scala:909)at scala.tools.nsc.interpreter.ILoop$$anonfun$process$1.apply(ILoop.scala:909)at scala.reflect.internal.util.ScalaClassLoader$.savingContextLoader(ScalaClassLoader.scala:97)at scala.tools.nsc.interpreter.ILoop.process(ILoop.scala:909)at scala.tools.nsc.MainGenericRunner.runTarget$1(MainGenericRunner.scala:74)at scala.tools.nsc.MainGenericRunner.run$1(MainGenericRunner.scala:87)at scala.tools.nsc.MainGenericRunner.process(MainGenericRunner.scala:98)at scala.tools.nsc.MainGenericRunner$.main(MainGenericRunner.scala:103)at scala.tools.nsc.MainGenericRunner.main(MainGenericRunner.scala)这似乎是一个经典的问题,我首先与我在系统上安装了Oracle java 11这一事实有关。但是,我认为我使openjdk8是默认的,系统范围的JRE,如下所示:
查看完整描述

1 回答

?
饮歌长啸

TA贡献1951条经验 获得超3个赞

事实证明,没有改变用户的PATH(它仍然指向java11)。看起来 scala-shell 不使用系统的默认 JRE,而是使用 .bashrc(在我的例子中是 .zshrc)指向的 JRE。update-alternatives --config javaJAVA_HOME



查看完整回答
反对 回复 2022-08-17
  • 1 回答
  • 0 关注
  • 74 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信