[英]NoSuchMethodError when I'm running jar on cluster
當我運行單元測試時,一切正常,但是當我在集群上運行時,出現NoSuchMethodError
2015-09-07 16:51:40,143致命[main] org.apache.hadoop.mapred.YarnChild:運行子級時出錯:java.lang.NoSuchMethodError:com.google.common.base.Splitter.splitToList(Ljava / lang / CharSequence;)Ljava / util / List;
在pom.xml中,我加入了番石榴:com.google.guava:guava:18.0
當我設置番石榴14.0版時,我得到了同樣的錯誤。 我該怎么辦?
在您的類路徑中檢查類拆分器。 可能有兩個同名的Splitter類來自兩個不同的jar,而一個類覆蓋了另一個。
在所有jars Splitter類都存在的情況下簽入工作區,並刪除一個不需要的依賴項。 這應該工作。
根據更改日志 ,從15.0版開始引入了public List<String> com.google.common.base.Splitter.splitToList(CharSequence)
。 因此,您可能必須將版本從14.0更改為15.0或更高版本。 我認為18.0也應該起作用...
+ * @since 15.0
+ */
+ @Beta
+ public List<String> splitToList(CharSequence sequence) {
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.