我正在構建一個Spark 2.1.0的小型測試應用程序,作爲我的計算機上的2個工作集羣運行,並在應用程序的jar文件中打包依賴庫。如何在spark-submit應用程序的jar文件中提交庫時告訴Spark?否則,我在線程「main」java.lang.NoClassDefFoundError中收到異常。spark-submit如何指定依賴庫位於應用程序的jar內
還是應該依賴庫複製到Spark?
在此先感謝。
我正在構建一個Spark 2.1.0的小型測試應用程序,作爲我的計算機上的2個工作集羣運行,並在應用程序的jar文件中打包依賴庫。如何在spark-submit應用程序的jar文件中提交庫時告訴Spark?否則,我在線程「main」java.lang.NoClassDefFoundError中收到異常。spark-submit如何指定依賴庫位於應用程序的jar內
還是應該依賴庫複製到Spark?
在此先感謝。
要添加外部庫在下面的目錄
添加應用程序JARspark.driver.extraLibraryPath spark.driver.extraClassPath
spark.executor.extraClassPath
spark.executor.extraLibraryPath
你可以找到/etc/spark/conf.dist/spark-defaults.conf文件上面的目錄路徑
因此,火花本身並不是看着罐子裏面? –
您需要檢查如何打包應用程序jar。我假設你正在使用maven或sbt來構建你的jar。構建和打包成功完成? – Vikrame
我正在使用IntelliJ IDEA。我有什麼特別的東西在罐子裏?所有的庫都在jar的根部。 –
更簡單的方法是構建一個超級jar - 在你的jar中你所有的pom依賴將被添加到你的jar中。
另外,最好的辦法是 -
我用所有依賴構建jur,但spark沒有在負載上找到這些。 –
Spark不支持MapReduce支持的「應用程序庫內庫」功能。 – vanza