java.lang.NoSuchMethodError: io.netty.buffer.PooledByteBufAllocator.metric () Lio / netty / buffer / PooledByteBufAllocatorMetric; - PullRequest
0 голосов
/ 16 мая 2018

Я пытаюсь запустить простой скрипт с помощью spark, и он дает мне

java.lang.NoSuchMethodError: io.netty.buffer.PooledByteBufAllocator.metric () Lio / netty / buffer / PooledByteBufAllocatorMetric;

Я видел в этой теме: Проблема версии Netty Spark 2.3.0: NoSuchMethod io.netty.buffer.PooledByteBufAllocator.metric ()

Но даже после того, как я добавил новый модуль netty в свой pom.xml, я все еще вижу его. Мой pom.xml выглядит так:

 <dependency>
   <groupId>org.apache.spark</groupId>
   <artifactId>spark-core_2.11</artifactId>
   <version>2.3.0</version>
 </dependency>
 <dependency>
   <groupId>io.netty</groupId>
   <artifactId>netty-all</artifactId>
   <version>4.1.17.Final</version>
 </dependency>

Я также пытался использовать spark 2.2.1, но это дает мне:

java.lang.IllegalArgumentException: требование не выполнено: может вызывать только getServletHandlers на работающей системе MetricsSystem

Так что я немного застрял, есть ли другие конфигурации, которые я могу попробовать?

1 Ответ

0 голосов
/ 02 июня 2018

Так что это может помочь. Во-первых, я не большой Java-парень, и это мой первый набег на Cassandra / spark. Я думаю, что они исправили это из своих исходных загрузок, потому что эта управляемая зависимость теперь добавлена ​​в 2.3.0 (клянусь, это было не так, как день назад, я мог бы сойти с ума). Я также пытался использовать соединитель кассандры, и включение этих банок могло быть причиной моей проблемы. В любом случае это отрывок из моего файла Docker:

#SPARK
ENV SPARK_COMMIT 992447fb30ee9ebb3cf794f2d06f4d63a2d792db
ENV SPARK_VERSION 2.3.0
ENV SPARK_PREFIX /usr
ENV SPARK_HOME /usr/spark-${SPARK_VERSION}
ENV _R_CHECK_FORCE_SUGGESTS_ false
RUN wget http://apache.claz.org/spark/spark-2.3.0/spark-2.3.0.tgz && tar -xzf spark-2.3.0.tgz -C $SPARK_PREFIX

# COPY ./builds/secondpage-spark/pom.xml $SPARK_HOME/pom.xml

RUN cd $SPARK_HOME && ./dev/make-distribution.sh --name custom-spark --pip --tgz -Phive -Phive-thriftserver -Pyarn -Pkubernetes -DskipTests

# SPARK CASSANDRA CONNECTOR
ENV CONNECTOR_COMMIT d8a3eb4
ENV CONNECTOR_HOME /usr/spark-cassandra-connector
RUN git clone https://github.com/datastax/spark-cassandra-connector $CONNECTOR_HOME && \
cd $CONNECTOR_HOME && git checkout $CONNECTOR_COMMIT && \
sbt/sbt doc && \
sbt/sbt package && \
sbt/sbt assembly

Там есть куча посторонних вещей, потому что я кидаю вещи в стену, и это первое, что нужно воткнуть. Так что это может быть очищено, или вы можете преобразовать его в чистый bash, что хотите

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...