【发布时间】:2015-03-20 11:14:35
【问题描述】:
当我使用 Appengine-mapreduce 库触发 mapreduce 作业时出现受限类异常。我使用的是 appengine sdk 版本 1.8.8。错误似乎是因为 appengine-mapper 代码内部使用了 hadoop-0.20.2。
java.lang.NoClassDefFoundError: java.lang.management.ManagementFactory is a restricted class. Please see the Google App Engine developer's guide for more details.
at com.google.apphosting.runtime.security.shared.stub.java.lang.management.ManagementFactory.<clinit>(ManagementFactory.java)
at org.apache.hadoop.util.ReflectionUtils.<clinit>(ReflectionUtils.java:121)
at org.apache.hadoop.io.serializer.SerializationFactory.add(SerializationFactory.java:64)
at org.apache.hadoop.io.serializer.SerializationFactory.<init>(SerializationFactory.java:54)
at com.google.appengine.tools.mapreduce.SerializationUtil.serializeToByteArrayOutputStream(SerializationUtil.java:46)
at com.google.appengine.tools.mapreduce.SerializationUtil.serializeToByteArray(SerializationUtil.java:60)
at com.google.appengine.tools.mapreduce.v2.impl.ShardState.setInputSplit(ShardState.java:215)
at com.google.appengine.tools.mapreduce.v2.impl.handlers.Worker.scheduleShards(Worker.java:218)
at com.google.appengine.tools.mapreduce.v2.impl.handlers.Controller.handleStart(Controller.java:133)
触发代码:
MapReduceXml mrXml = MapReduceXml.getMapReduceXmlFromFile();
Configuration configuration = mrXml.instantiateConfiguration( configName, params );
jobId = Controller.handleStart(configuration, configName, "/mapreduce/");
请指教!!
【问题讨论】:
标签: java google-app-engine mapreduce