我有一個Spark應用程序,我想使用配置文件進行配置,例如Spark的spark-defaults.conf
,HBase的hbase-site.xml
和log4j的log4j.properties
。我也想避免必須以編程方式添加文件。將Spark和Hadoop配置文件添加到JAR中?
我嘗試將文件添加到我的JAR(在/
和/conf
路徑下),但是當我運行時,配置文件似乎沒有任何影響。
要進一步檢查我的要求我試圖運行spark-shell
用相同的JAR和檢查文件的內容,我發現,他們被文件覆蓋從其他地點:/spark-defaults.conf
和/log4j.properties
是完全不同的,/conf/hbase-site.xml
同時保持完好有(可能)的屬性被另一個JAR的hbase-default.xml
覆蓋。
我使用CDH 5.4.0。
從/etc/spark/
加載文件log4j.properties
和spark-defaults.conf
並且從/opt/cloudera/parcels/CDH-5.4.0-1.cdh5.4.0.p0.27/jars/hbase-common-1.0.0-cdh5.4.0.jar
加載hbase-default.xml
。
有沒有辦法在我的配置文件上指定某種優先級?我應該只配置/etc/spark
中的文件(也可以添加我的hbase-site.xml
)?有沒有一種方法可以將自定義目錄路徑添加到可以優先於其他目錄的類路徑中?