0

我在计算文件行时遇到异常:实际上,如果我在本地模式下执行 shell,代码工作正常:但是如果我们尝试使用 Yarn-client 模式的 shell - 下面的异常堆栈将返回。我已经针对同样的问题进行了一些调查。有些人认为这是不同的 JVM 兼容性问题。这可能是真的,因为在使用 JDK6 的其他环境中,它在本地和 Yarn-Client 模式下都能完美运行。在另一个环境中使用 JDK7 。在纱线客户端模式下运行时遇到问题:

java.io.InvalidClassException: scala.reflect.ClassTag$$anon$1; local class incompatible: stream classdesc serialVersionUID = -4937928798201944954, local class serialVersionUID = -8102093212602380348

FYI JAVA - :在环境中面临问题

java -version
java version "1.7.0"
Java(TM) SE Runtime Environment (build pxa6470_27sr2fp10-20141218_02(SR2 FP10))
IBM J9 VM (build 2.7, JRE 1.7.0 Linux amd64-64 Compressed References 20141215_227395 (JIT enabled, AOT enabled)
J9VM - R27_Java727_SR2_20141215_1631_B227395
JIT  - tr.r13.java_20141003_74587.07
GC   - R27_Java727_SR2_20141215_1631_B227395_CMPRSS
J9CL - 20141215_227395)
JCL - 20141217_01 based on Oracle jdk7u75-b12

在另一个旧环境中:它工作正常

java -version
java version "1.6.0_91"
Java(TM) SE Runtime Environment (build 1.6.0_91-b31)
Java HotSpot(TM) 64-Bit Server VM (build 20.91-b07, mixed mode

从这里我将代码移动到新环境:如果我们怀疑它是不兼容的版本问题,那么它也不应该在本地模式下工作。请澄清我的问题:

4

2 回答 2

1

我在将 JAVA_HOME 设置为 1.8 后修复了它 export JAVA_HOME=/usr/lib/jvm/jre-1.8.0-openjdk-1.8.0.31-1.b13.el6_6.x86_64/ export PATH=$JAVA_HOME/bin:$PATH

于 2015-08-07T10:09:23.907 回答
1

我也遇到了同样的问题,我的集群使用 RHEL 和 jre-1.7.1-ibm.x86_64。

花了几个小时后,我发现问题的原因来自JVM

解决方案

我能够通过从 jre-1.7.1-ibm.x86_64 更改 jvm 来解决这个问题

java-1.8.0-openjdk-1.8.0.25-3.b17.el6_6.x86_64。

于 2016-09-02T10:17:58.427 回答