Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/image-processing/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Apache Ignite:未能加载作业类[class=org.Apache.Ignite.internal.processors.hadoop.v2.HadoopV2Job]_Ignite - Fatal编程技术网

Apache Ignite:未能加载作业类[class=org.Apache.Ignite.internal.processors.hadoop.v2.HadoopV2Job]

Apache Ignite:未能加载作业类[class=org.Apache.Ignite.internal.processors.hadoop.v2.HadoopV2Job],ignite,Ignite,我正在尝试使用ignite.sh脚本启动服务器,但出现上述错误(加载HadoopV2Job失败)“config/default config.xml”正在传递给CommandLineStartup,尚未更改 有没有人遇到过这个问题,或者有人知道如何解决它 我的Ignite版本是1.4.0,下面是完整的堆栈跟踪: class org.apache.ignite.IgniteException: Failed to start processor: HadoopProcessor [idCtr=0]

我正在尝试使用ignite.sh脚本启动服务器,但出现上述错误(加载HadoopV2Job失败)<代码>“config/default config.xml”正在传递给CommandLineStartup,尚未更改

有没有人遇到过这个问题,或者有人知道如何解决它

我的Ignite版本是1.4.0,下面是完整的堆栈跟踪:

class org.apache.ignite.IgniteException: Failed to start processor: HadoopProcessor [idCtr=0]
at org.apache.ignite.internal.util.IgniteUtils.convertException(IgniteUtils.java:881)
at org.apache.ignite.Ignition.start(Ignition.java:349)
at org.apache.ignite.startup.cmdline.CommandLineStartup.main(CommandLineStartup.java:302)
Caused by: class org.apache.ignite.IgniteCheckedException: Failed to start processor: HadoopProcessor [idCtr=0]
at org.apache.ignite.internal.IgniteKernal.startProcessor(IgniteKernal.java:1504)
at org.apache.ignite.internal.IgniteKernal.start(IgniteKernal.java:888)
at org.apache.ignite.internal.IgnitionEx$IgniteNamedInstance.start0(IgnitionEx.java:1617)
at org.apache.ignite.internal.IgnitionEx$IgniteNamedInstance.start(IgnitionEx.java:1484)
at org.apache.ignite.internal.IgnitionEx.start0(IgnitionEx.java:965)
at org.apache.ignite.internal.IgnitionEx.startConfigurations(IgnitionEx.java:892)
at org.apache.ignite.internal.IgnitionEx.start(IgnitionEx.java:784)
at org.apache.ignite.internal.IgnitionEx.start(IgnitionEx.java:705)
at org.apache.ignite.internal.IgnitionEx.start(IgnitionEx.java:576)
at org.apache.ignite.internal.IgnitionEx.start(IgnitionEx.java:546)
at org.apache.ignite.Ignition.start(Ignition.java:346)
... 1 more
Caused by: class org.apache.ignite.IgniteCheckedException: Failed to load job class [class=org.apache.ignite.internal.processors.hadoop.v2.HadoopV2Job]
at org.apache.ignite.internal.processors.hadoop.jobtracker.HadoopJobTracker.start(HadoopJobTracker.java:167)
at org.apache.ignite.internal.processors.hadoop.HadoopProcessor.start(HadoopProcessor.java:103)
at org.apache.ignite.internal.IgniteKernal.startProcessor(IgniteKernal.java:1501)
... 11 more
Caused by: java.lang.IllegalArgumentException
at org.objectweb.asm.ClassReader.<init>(Unknown Source)
at org.objectweb.asm.ClassReader.<init>(Unknown Source)
at org.objectweb.asm.ClassReader.<init>(Unknown Source)
at org.apache.ignite.internal.processors.hadoop.HadoopClassLoader.hasExternalDependencies(HadoopClassLoader.java:288)
at org.apache.ignite.internal.processors.hadoop.HadoopClassLoader.loadClass(HadoopClassLoader.java:162)
at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
at org.apache.ignite.internal.processors.hadoop.jobtracker.HadoopJobTracker.start(HadoopJobTracker.java:163)
... 13 more
class org.apache.ignite.ignite异常:无法启动处理器:HadoopProcessor[idCtr=0]
位于org.apache.ignite.internal.util.IgniteUtils.convertException(IgniteUtils.java:881)
位于org.apache.ignite.Ignition.start(Ignition.java:349)
位于org.apache.ignite.startup.cmdline.CommandLineStartup.main(CommandLineStartup.java:302)
原因:class org.apache.ignite.IgniteCheckedException:无法启动处理器:HadoopProcessor[idCtr=0]
位于org.apache.ignite.internal.IgniteKernal.startProcessor(IgniteKernal.java:1504)
位于org.apache.ignite.internal.IgniteKernal.start(IgniteKernal.java:888)
位于org.apache.ignite.internal.IgnitionEx$IgniteNamedInstance.start0(IgnitionEx.java:1617)
位于org.apache.ignite.internal.IgnitionEx$IgniteNamedInstance.start(IgnitionEx.java:1484)
位于org.apache.ignite.internal.IgnitionEx.start0(IgnitionEx.java:965)
位于org.apache.ignite.internal.IgnitionEx.startConfiguration(IgnitionEx.java:892)
位于org.apache.ignite.internal.IgnitionEx.start(IgnitionEx.java:784)
位于org.apache.ignite.internal.IgnitionEx.start(IgnitionEx.java:705)
位于org.apache.ignite.internal.IgnitionEx.start(IgnitionEx.java:576)
位于org.apache.ignite.internal.IgnitionEx.start(IgnitionEx.java:546)
位于org.apache.ignite.Ignition.start(Ignition.java:346)
... 还有一个
原因:class org.apache.ignite.IgniteCheckedException:未能加载作业类[class=org.apache.ignite.internal.processors.hadoop.v2.HadoopV2Job]
位于org.apache.ignite.internal.processors.hadoop.jobtracker.HadoopJobTracker.start(HadoopJobTracker.java:167)
位于org.apache.ignite.internal.processors.hadoop.HadoopProcessor.start(HadoopProcessor.java:103)
位于org.apache.ignite.internal.IgniteKernal.startProcessor(IgniteKernal.java:1501)
... 还有11个
原因:java.lang.IllegalArgumentException
位于org.objectweb.asm.ClassReader。(未知来源)
位于org.objectweb.asm.ClassReader。(未知来源)
位于org.objectweb.asm.ClassReader。(未知来源)
位于org.apache.ignite.internal.processors.hadoop.HadoopClassLoader.hasExternalDependencies(HadoopClassLoader.java:288)
位于org.apache.ignite.internal.processors.hadoop.HadoopClassLoader.loadClass(HadoopClassLoader.java:162)
位于java.lang.ClassLoader.loadClass(ClassLoader.java:357)
位于org.apache.ignite.internal.processors.hadoop.jobtracker.HadoopJobTracker.start(HadoopJobTracker.java:163)
... 还有13个

Shane,你用JDK8编译Ignite代码了吗? 看起来org.objectweb.asm库无法解析类“org.apache.ignite.internal.processors.hadoop.v2.HadoopV2Job”字节码,因为字节码版本高于1.7:

/**
 * Constructs a new {@link ClassReader} object.
 * 
 * @param b
 *            the bytecode of the class to be read.
 * @param off
 *            the start offset of the class data.
 * @param len
 *            the length of the class data.
 */
public ClassReader(final byte[] b, final int off, final int len) {
    this.b = b;
    // checks the class version
    if (readShort(off + 6) > Opcodes.V1_7) {
        throw new IllegalArgumentException();
    }

请尝试使用JDK1.7构建Ignite,或使用JDK8指定目标级别=1.7。这解决了问题吗?

Ivan,是的,它是用JDK8编译的。我已经重新安装并使用了Ignite hadoop二进制文件,它可以正常工作;在“java8”概要文件下的“parent/pom.xml”和“examples/pom.xml”中可以找到对JDK1.8的引用。我试着注释这一部分,但这产生了其他错误。最终的效果是将源和目标标记设置为1.7,而不是注释掉该部分。