Я работаю над искровым приложением. Я использую стороннюю банку. Я добавил его в свой файл sbt. Компиляция прошла успешноNoClassDefFoundError in Spark Отправить
> libraryDependencies += "org.springframework.security" %
> "spring-security-web" % "3.0.7.RELEASE
Но когда я подать искру работу
spark-submit --master yarn-client --class MyClass target/scala-2.10/my-app.jar
Она терпит неудачу с ошибкой при слежении:
Exception in thread "main" org.apache.spark.SparkException: Job aborted due to
stage failure: Task 0 in stage 48.0 failed 1 times, most recent failure: Lost task 0.0 in stage 48.0 (TID 3216, localhost):
`java.lang.NoClassDefFoundError:` org/springframework/security/web/util/IpAddressMatcher
Я также попытался явно передавая банку в искру подать банку
spark-submit --master yarn-client --jars third-party-jars/spring-security-web-3.0.7.RELEASE.jar --class MyClass target/scala-2.10/my-app.jar
Но затем он не работает со следующей ошибкой:
java.lang.NoClassDefFoundError: org/springframework/util/StringUtils
at org.springframework.security.web.util.IpAddressMatcher.<init>(IpAddressMatcher.java:33)
Аналогичная ошибка, но в другом классе.
Любое предложение о том, как разрешить это?
Спасибо
Попробуйте, чтобы сделать «uberjar» с помощью плагина сборки из SBT – rhernando
, как @rhernando упоминалось, попытаться построить жир банку следующей данной инструкции - http://stackoverflow.com/questions/28459333/how-to-build -an-uber-jar-fat-jar-using-sbt-int-intellij-idea. Все ваши зависимости должны быть помещены в банку. – Niemand
Спасибо .. Это сработало – Alok