Failed to initialize compiler: object java.lang.Object in compiler mirror not found.
2 ** Note that as of 2.8 scala does not assume use of the java classpath.
3 ** For the old behavior pass -usejavacp to scala, or if using a Settings
4 ** object programmatically, settings.usejavacp.value = true.
1、Windows安装Scala或者Spark后,测试安装成功与否时 cmd中出现以下问题:
1 Failed to initialize compiler: object java.lang.Object in compiler mirror not found.
2 ** Note that as of 2.8 scala does not assume use of the java classpath.
3 ** For the old behavior pass -usejavacp to scala, or if using a Settings
4 ** object programmatically, settings.usejavacp.value = true.
直接原因:这是与jdk
版本冲突
引起的,应该是jdk版本太高导致的。
解决方案:
如果是安装Scala出现此情况,降低一下jdk版本,或者提高一下scala版本
如果是安装Spark出现此情况,是不是你自己的jdk版本过高?,降低一下jdk版本
因为scala使用的是jvm,spark由scala写的,不同版本其预写的jdk版本不一致,,尽量选择对应版本
eg.在windows上安装spark2.3.4,对应1.8JDK,scala2.12.5或2.11.8都行,2.7.7版本HADOOP
下表是官网上的
JDK与scala的版本兼容性表:
Version compatibility table
JDK versionMinimum Scala versionsRecommended Scala versions
2.13.6, 2.12.15 (forthcoming)
2.13.6, 2.12.15 (forthcoming)
2.13.5, 2.12.14
2.13.6, 2.12.14
13, 14, 15
2.13.2, 2.12.11
2.13.6, 2.12.14
2.13.1, 2.12.9
2.13.6, 2.12.14
2.13.0, 2.12.4, 2.11.12
2.13.6, 2.12.14, 2.11.12
2.13.0, 2.12.0, 2.11.0, 2.10.2
2.13.6, 2.12.14, 2.11.12, 2.10.7
2.11.0, 2.10.0
2.11.12, 2.10.7
2、Error:scalac: Error: Error compiling the sbt component 'compiler-interface-2.11.8-55.0'
sbt.internal.inc.CompileFailed: Error compiling the sbt component 'compiler-interface-2.11.8-55.0'
原因:jdk版本-11与scala版本-2-11.8冲突
解决方案:(1)升级scala版本到12。
(2)降低jdk版本到1.8。