我正在编写一个BloomFilter,并希望使用Scala的默认MurmurHash3实现: scala.util.MurmurHash3。但是,我的编译失败了,出现以下编译错误:
[error] /mnt/hgfs/dr/sandbox/dr-commons/src/main/scala/dr/commons/collection/BloomFilter.scala:214: MurmurHash3 is not a member of scala.util
[error] import scala.util.{MurmurHash3 => MH}我使用的是Scala 2.9.1和sbt 0.11.2。
默认情况下,MurmurHash3类不在2.9.1库中吗?我想是的,因为它在库中使用得很多。据我所知,这个类不是包私有的。
发布于 2012-04-07 03:43:20
它被称为没有3的scala.util.MurmurHash,但它确实是MurMurhash3算法(参见the comments in the source)
编辑我刚刚看到Rex Kerr是scala.util.MurmurHash的作者。我建议你不要接受这个答案(假设它是正确的);因为Rex Kerr在StackOverflow上,他可能会插话,给你一个更好的答案……
发布于 2017-02-02 13:10:16
我使用的是scala 2.11和spark apache 1.6.2。它工作得很好。在这些版本中,我没有得到任何错误
import scala.util.hashing.{ MurmurHash3 => MH3 }
val data="I am SANTHOSH"
val sample = MH3.stringHash(data, MH3.stringSeed)
println(":Hash Value: "+sample)<dependency>
<groupId>org.apache.spark</groupId>
<artifactId>spark-core_2.11</artifactId>
<version>1.6.2</version>
</dependency>
<dependency>
<groupId>org.apache.spark</groupId>
<artifactId>spark-sql_2.11</artifactId>
<version>1.6.2</version>
</dependency>
<dependency>
<groupId>org.apache.spark</groupId>
<artifactId>spark-mllib_2.11</artifactId>
<version>1.6.2</version>
</dependency>发布于 2016-02-19 01:27:51
下面的方法对我很有效:
import scala.util.hashing.MurmurHash3
https://stackoverflow.com/questions/10048257
复制相似问题