這個錯誤訊息是因為不同的 Hadoop 版本所造成的
主要是因為 org.apache.hadoop.conf.Configuration 這個類別在 Hadoop 2.3 之後
新增了一個方法(method) addDeprecations
出現這個問題就有可能代表你的環境內有 Hadoop 2.3 的 jar 以及比 2.3 還早的 jar
我會遇到這個問題是因為
我的專案本身透過 Maven 引入 Hadoop 2.3 的 package
另外也相依了 solr-core 4.1.0 這個 package
剛好 solr-core 4.1.0 它有相依 Hadoop 某些 jar,但卻是 Hadoop 2.2 的
可以在 Solr-core 4.1.0 maven repository 內看到,如下圖
所以導致這樣的問題
解法部外乎就是把你專案本身的 Hadoop 2.3 降到 2.2
或是在 Maven 中用 exclusion 標籤排除掉以上那 4 個 jar
沒有留言:
張貼留言