cqlsh 5.0.1 | Cassandra 3.0.1 | CQL spec 3.3.1
<dependency>
<groupId>org.apache.spark</groupId>
<artifactId>spark-core_2.10</artifactId>
<version>1.5.0</version>
</dependency>
<dependency>
<groupId>org.apache.spark</groupId><dependency>
<groupId>com.datastax.spark</groupId>
<artifactId>spark-cassandra-connector_2.10</artifactId>
<version>1.5.0</version>
</dependency>
<artifactId>spark-streaming-kinesis-asl_2.10</artifactId>
<version>1.5.0</version>
</dependency>
ava.lang.ExceptionInInitializerError
at com.datastax.spark.connector.cql.DefaultConnectionFactory$.clusterBuilder(CassandraConnectionFactory.scala:35)
at com.datastax.spark.connector.cql.DefaultConnectionFactory$.createCluster(CassandraConnectionFactory.scala:87)
at com.datastax.spark.connector.cql.CassandraConnector$.com$datastax$spark$connector$cql$CassandraConnector$$createSession(CassandraConnector.scala:153)
at com.datastax.spark.connector.cql.CassandraConnector$$anonfun$2.apply(CassandraConnector.scala:148)
at com.datastax.spark.connector.cql.CassandraConnector$$anonfun$2.apply(CassandraConnector.scala:148)
at com.datastax.spark.connector.cql.RefCountedCache.createNewValueAndKeys(RefCountedCache.scala:31)
at com.datastax.spark.connector.cql.RefCountedCache.acquire(RefCountedCache.scala:56)
at com.datastax.spark.connector.cql.CassandraConnector.openSession(CassandraConnector.scala:81)
at ampush.event.process.core.CassandraServiceManagerImpl.getAdMetaInfo(CassandraServiceManagerImpl.java:158)
at ampush.event.config.metric.processor.ScheduledEventAggregator$4.call(ScheduledEventAggregator.java:308)
at ampush.event.config.metric.processor.ScheduledEventAggregator$4.call(ScheduledEventAggregator.java:290)
at org.apache.spark.api.java.JavaRDDLike$$anonfun$foreachPartition$1.apply(JavaRDDLike.scala:222)
at org.apache.spark.api.java.JavaRDDLike$$anonfun$foreachPartition$1.apply(JavaRDDLike.scala:222)
at org.apache.spark.rdd.RDD$$anonfun$foreachPartition$1$$anonfun$apply$29.apply(RDD.scala:902)
at org.apache.spark.rdd.RDD$$anonfun$foreachPartition$1$$anonfun$apply$29.apply(RDD.scala:902)
at org.apache.spark.SparkContext$$anonfun$runJob$5.apply(SparkContext.scala:1850)
at org.apache.spark.SparkContext$$anonfun$runJob$5.apply(SparkContext.scala:1850)
at org.apache.spark.scheduler.ResultTask.runTask(ResultTask.scala:66)
at org.apache.spark.scheduler.Task.run(Task.scala:88)
at org.apache.spark.executor.Executor$TaskRunner.run(Executor.scala:214)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
at java.lang.Thread.run(Thread.java:745)
Caused by: java.lang.IllegalStateException: Detected Guava issue #1635 which indicates that a version of Guava less than 16.01 is in use. This introduces codec resolution issues and potentially other incompatibility issues in the driver. Please upgrade to Guava 16.01 or later.
at com.datastax.driver.core.SanityChecks.checkGuava(SanityChecks.java:62)
at com.datastax.driver.core.SanityChecks.check(SanityChecks.java:36)
at com.datastax.driver.core.Cluster.<clinit>(Cluster.java:67)
... 23 more
请告诉我如何管理这里的番石榴?
谢谢
另一个解决方案,转到目录
火花/罐子
.重命名guava-14.0.1.jar
,然后复制guava-19.0.jar
,如下图所示:
Guava 是一套来自Google的核心Java库,其中包括新的集合类型(如multimap和multiset)、不可变的集合、图库,以及并发、I/O、散列、缓存、基元、字符串等实用工具!它被广泛用于Google内部的大多数Java项目,也被许多其他公司广泛使用。它被广泛用于Google内部的大多数Java项目,也被许多其他公司广泛使用。 Guava 的好处: 标准化 - Guava库是由谷歌托管
问题内容: 在Java程序中,我有一个要基于特定属性过滤的bean列表。 例如,假设我有一个Person列表,一个JavaBean,其中Person具有许多属性,其中包括“名称”。 我也有一个名字列表。 现在,我想查找姓名在姓名列表中的所有人员。 使用Google Guava执行此过滤器的最佳方法是什么? 到目前为止,我已经考虑过将Guava与Apache beanutils结合使用,但这似乎并不
简单缓存用ConcurrentHashMap本来就是传统,而Guava在Map的基础上,又玩出很多花样来,包括 原子的内容加载,当Key在Cache中不存在时,会回调Loader函数,如果有其他并发的对该Key的请求会等待Loader函数而不是重复加载。 maximum 数量限制,超出时用LRU(least-recently-used)算法清除。 超时限制,设置max idle time 或 ma
问题内容: 我的应用程序有一个硬依赖或优于 但是我也在使用它与> 22.0的番石榴版本不兼容,如下所述: https://github.com/SeleniumHQ/selenium/issues/4381 我对Java很陌生,这里最好的做法是什么? 我已经研究过类加载器,但是看起来像是一个很深的兔子洞。 问题答案: 由于您对 使用有严格的依赖, 可能会使您走上十字路口。但是 Selenium发行
问题内容: 使用Commons或Guava库,将每行文本(来自文本文件)放入LinkedList(作为String对象)或某些其他集合的最优雅方法是什么。 问题答案: 这是用番石榴做的方法: 参考:
我正在尝试使用Intelij模板编写一个自定义setter,但用于Google的Guava Optionals。例如,如果我有一个如下的类: 在Android Studio中使用默认的Setter生成输出: 我想实现的是: 到目前为止,我尝试的是复制Intelij的模板并使用StringUtil。split()以剥离可选的 错误 对我该怎么做有什么建议吗? 默认设置生成Setter的默认模板 我的