0

Google App Engine の Java mapreduce パイプラインからのこのキャッチされない例外の回避策を知っていますか?

この行で GCS_SERVICE を作成したのは、単に GcsServiceFactory の失敗ですか? https://code.google.com/p/appengine-mapreduce/source/browse/trunk/java/src/com/google/appengine/tools/mapreduce/inputs/GoogleCloudStorageLineInputReader.java?r=462#80

修正方法に関するアイデアはありますか?

これは頻繁に見られます。

 2013-09-24 18:18:17.819 Uncaught exception from servlet
 java.lang.NoSuchMethodError:
 com.google.appengine.tools.cloudstorage.GcsService.openPrefetchingReadChannel(Lcom/google/appengine/tools/cloudstorage/GcsFilename;JI)Ljava/nio/channels/ReadableByteChannel;
    at com.google.appengine.tools.mapreduce.inputs.GoogleCloudStorageLineInputReader.beginSlice(GoogleCloudStorageLineInputReader.java:79)
    at com.google.appengine.tools.mapreduce.impl.WorkerShardTask.run(WorkerShardTask.java:84)
    at com.google.appengine.tools.mapreduce.impl.shardedjob.ShardedJobRunner.runTask(ShardedJobRunner.java:265)
    at com.google.appengine.tools.mapreduce.impl.shardedjob.ShardedJobServiceImpl.handleWorkerRequest(ShardedJobServiceImpl.java:49)
    at com.google.appengine.tools.mapreduce.impl.handlers.MapReduceServletImpl.doPost(MapReduceServletImpl.java:76)
    at com.google.appengine.tools.mapreduce.MapReduceServlet.doPost(MapReduceServlet.java:57)
4

1 に答える 1

1

以下の理由が考えられます。

  1. クラスパスにすべての jar を含めたわけではありません。相互に依存するクラスがある可能性があります。
  2. あなたのjarはそのメソッドを持たない古いバージョンです。
  3. クラス コンストラクターがクラス オブジェクトを初期化できない依存 jar がいくつかありません。
于 2013-09-25T02:03:30.617 に答える