Я запускаю пример Spark, называемый JavaPageRank, но это копия, которую я скомпилировал отдельно, используя maven в новой банке. Я продолжаю получать эту ошибку:Spark не может найти классы Guava
ERROR SparkUncaughtExceptionHandler: Uncaught exception in thread Thread[Executor task launch worker-0,5,main] java.lang.NoClassDefFoundError: com/google/common/collect/Iterables
Несмотря на то, что guava указан как одна из зависимостей Spark. Я запускаю скомпилированный Spark 1.6, который я загрузил, предварительно скомпилированный с веб-сайта apache.
Спасибо!
Привет! Спасибо, что ответили так быстро. Но я сам не скомпилировал источник искры - неужели эта проблема сохранится, если я использую предварительно построенную версию? – user2839294
Хорошо, если я правильно вас понимаю, вы используете примеры внутри самого пакета Spark. Если да, то, скорее всего, не возникнет проблема с искровым пакетом. Перед запуском и использованием чего-либо в нем нужно собрать сам пакет. Запустите «mvn -DskipTests clean package», чтобы создать искровый пакет. Подобно заданному здесь вопросу http://stackoverflow.com/questions/27618843/why-does-spark-submit-and-spark-shell-fail-with-failed-to-find-spark-assembly-j/30047304# 30047304 надеюсь, что это поможет. – Lina
Я только копирую один пример из искры и компилирую его в другую внешнюю банку с очень незначительными изменениями. Я хочу запустить эту банку на основе искры, которая уже скомпилирована. Когда я запускаю пример непосредственно из скомпилированной искры, он не дает ошибку. Но это дает эту ошибку, когда я использую свою внешнюю банку. – user2839294