You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@spark.apache.org by "Sean Owen (JIRA)" <ji...@apache.org> on 2015/01/01 20:37:13 UTC
[jira] [Commented] (SPARK-5052) Shaded
com.google.common.base.Optional transform() method has a wrong signature
[ https://issues.apache.org/jira/browse/SPARK-5052?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14262646#comment-14262646 ]
Sean Owen commented on SPARK-5052:
----------------------------------
Guava is shaded, except for this one class, because it was sort of inadvertently used in the public API. It should be a shading of Guava 14. You are perhaps trying to use a different version? And that results in this ugly little conflict. Best thing is to use Guava 14 or at least ensure a different copy does not shadow this Optional at runtime. I am not sure there is otherwise a change in Spark here.
> Shaded com.google.common.base.Optional transform() method has a wrong signature
> -------------------------------------------------------------------------------
>
> Key: SPARK-5052
> URL: https://issues.apache.org/jira/browse/SPARK-5052
> Project: Spark
> Issue Type: Bug
> Components: Spark Core
> Affects Versions: 1.2.0
> Reporter: Elmer Garduno
>
> PR https://github.com/apache/spark/pull/1813 shaded Guava jar file and moved Guava classes to package org.spark-project.guava when Spark is built by Maven.
> When a user jar uses the actual com.google.common.base.Optional transform(com.google.common.base.Function); method from Guava, a java.lang.NoSuchMethodError: com.google.common.base.Optional.transform(Lcom/google/common/base/Function;)Lcom/google/common/base/Optional; is thrown.
> The reason seems to be that the Optional class included on spark-assembly-1.2.0-hadoop1.0.4.jar has an incorrect method signature that includes the shaded class as an argument:
> Expected:
> javap -classpath target/scala-2.10/googlegenomics-spark-examples-assembly-1.0.jar com.google.common.base.Optional
> public abstract <V extends java/lang/Object> com.google.common.base.Optional<V> transform(com.google.common.base.Function<? super T, V>);
> Found:
> javap -classpath lib/spark-assembly-1.2.0-hadoop1.0.4.jar com.google.common.base.Optional
> public abstract <V extends java/lang/Object> com.google.common.base.Optional<V> transform(org.spark-project.guava.common.base.Function<? super T, V>);
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)
---------------------------------------------------------------------
To unsubscribe, e-mail: issues-unsubscribe@spark.apache.org
For additional commands, e-mail: issues-help@spark.apache.org