Java 作为可运行JAR运行时无法读取log4j2.xml和applicationContext.xml

Java 作为可运行JAR运行时无法读取log4j2.xml和applicationContext.xml,java,executable-jar,Java,Executable Jar,当我将应用程序作为独立JAR文件运行时,它会抛出FileNotFoundException。它无法在JAR中包含的/resources下找到applicationContext.xml。它甚至找不到log4j2.xml,因此它使用默认配置 已经有人问过同样的问题,但我找不到任何解决办法 经过一些研究,从上面链接中引用的答案,当我将项目导出为JAR时,它将配置文件保存在JAR中的/resources文件夹下;但是它必须存储在根目录下META-INF/ 我无法使它存储在根目录中。当我导出时,ecli

当我将应用程序作为独立JAR文件运行时,它会抛出
FileNotFoundException
。它无法在JAR中包含的
/resources
下找到
applicationContext.xml
。它甚至找不到
log4j2.xml
,因此它使用默认配置

已经有人问过同样的问题,但我找不到任何解决办法

经过一些研究,从上面链接中引用的答案,当我将项目导出为JAR时,它将配置文件保存在JAR中的
/resources
文件夹下;但是它必须存储在根目录下
META-INF/


我无法使它存储在根目录中。当我导出时,eclipse会自动在
/resource
文件夹下创建带有配置文件的JAR。

通过从eclipse导出创建的JAR在resource文件夹下有配置文件,但无法工作

解决了使用maven build创建的jar后的问题。这个jar的内容结构正确,根目录下有配置文件


确保包含maven jar插件,以便在清单文件中包含依赖项。

我认为您可能需要提供更多关于这一点的“上下文”:Spring版本(和“堆栈”)、应用程序结构等。否则,如果不缩小范围,就很难解决问题