Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/apache-spark/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Intellij idea 在spark应用程序中绑定到jar中的log4j属性文件被忽略_Intellij Idea_Apache Spark_Sbt_Classloader_Getresource - Fatal编程技术网

Intellij idea 在spark应用程序中绑定到jar中的log4j属性文件被忽略

Intellij idea 在spark应用程序中绑定到jar中的log4j属性文件被忽略,intellij-idea,apache-spark,sbt,classloader,getresource,Intellij Idea,Apache Spark,Sbt,Classloader,Getresource,我需要从src/resources中读取一个自定义log4j.properties,但这不起作用 try{ val inStream :InputStream= className.this.getClass.getClassLoader.getResourceAsStream("log4j.properties"); logCfgProps.load(inStream) } catch { case e: Throwable=> e.printStackTrac

我需要从src/resources中读取一个自定义log4j.properties,但这不起作用

try{
  val  inStream :InputStream= className.this.getClass.getClassLoader.getResourceAsStream("log4j.properties");

  logCfgProps.load(inStream)

} catch {
  case e: Throwable=>
    e.printStackTrace()
    log.error("log.properties file not present")
}

PropertyConfigurator.configure(logCfgProps)
这意味着jar中捆绑的log4j被忽略

我无法在spark home中的conf目录中触摸log4j属性

其他的选择是什么

编辑 一定是出了什么问题(在类路径中?) 既然这样做了

val resource:URL = Thread.currentThread().getContextClassLoader()
  .getResource("log4j.properties");
System.out.println("resource = " + resource); 
它指向conf目录中的log4j,我无法修改它,需要忽略它

怎么做

  • 您可以为文件指定另一个名称(并在代码中使用它),因此与
    conf/log4j.properties
    没有冲突

  • 您可以使用获取类路径上具有给定名称的所有资源,并选择所需的资源