2016-05-23 2 views
0

Я построил файл * .jar для моего проекта apache spark scala с использованием maven. Когда я пытаюсь выполнить основной класс, в некоторой строке кода он предоставляет ошибку Exception in thread "main" java.lang.NoClassDefFoundError для класса org.apache.spark.ml.recommendation.ALS.java.lang.NoClassDefFoundError для spark-submit

Я запустить искровым представить следующим образом:

sudo -u hdfs /usr/bin/spark-submit --class 
org.apache.spark.examples.ml.MyTest spark-examples-*.jar --rank 10 --path 
/home/ubuntu/data 

Похоже на то только не может найти org.apache.spark.ml.recommendation.ALS. У меня есть следующие операторы импорта в этом классе:

package org.apache.spark.examples.ml 

import java.util.Date 
import org.apache.spark.{SparkConf, SparkContext} 
import org.apache.spark.examples.mllib.AbstractParams 
import org.apache.spark.ml.recommendation.ALS 
import org.apache.spark.rdd.RDD 
import org.apache.spark.sql.{Row, SQLContext} 
import scopt.OptionParser 

Как решить эту проблему?

UPDATE 1:

Я добавил maven-asseblypom.xml плагин, а также assembly.xml в папку resources. Затем я успешно сделал mvn package, но опять та же проблема.

UPDATE 2:

jar -tvf spark-examples-1.5.3-SNAPSHOT-hadoop2.2.0.jar | grep "ALS" 

    2678 Mon May 23 13:11:44 CEST 2016 org/apache/spark/examples/ml/recommendation/MyFunc$ALSParams.class 

ответ

0

Сначала выяснить причину отказа.
1) Не хватает класса?
2) или Это проблема с инициализацией.

Чтобы узнать, доступен ли класс для запуска команды jar -tvf <.jar> | grep "class name", вы можете узнать, присутствует ли файл класса или нет или его инициализация.

+0

Спасибо. Я запустил 'jar -tvf <.jar> | grep "ALS" 'от терминала (каталог, в котором находится файл' jar'). Он говорит 'bash: синтаксическая ошибка около неожиданного токена' | '' – Klue

+0

jar -tvf <имя файла jar, которое должно содержать класс ALS> – Manoj

+0

jar -tvf com.fasterxml.jackson.core.jar | grep "ParserBase" 16912 Mon Oct 08 19:43:02 IST 2012 com/quickxml/jackson/core/base/ParserBase.class L-IDC2CUDKQ2-M: загрузка msing20 $ – Manoj

Смежные вопросы