12

当我在 IDEA 中开发应用程序时,我应该将 logback.xml 放在哪里才能对应用程序产生影响?

似乎当您运行/调试时,IDEA 不会制作任何 jar,也不会调用 Maven 来构建某些东西。它是否直接从编译的 *.class 文件执行 main() ?如果是这样,我可以将 logback.xml 放在哪里才能生效?

4

2 回答 2

24

logback.xml应该在 CLASSPATH 的根目录中可用。当你运行你的应用程序时,完整的 CLASSPATH 会在一开始就打印出来。当我放入logback.xml/src/main/resourcesMaven 项目)时,它可以正常工作。/src/test/resourceslogback-test.xml名字放进去也有存在感。

只需运行:

getClass().getClassLoader().getResource("/logback.xml");

并查看它是否返回某些东西或null.

如果您不使用 Maven 项目,请打开项目结构( Ctrl++ Alt)并在Modules部分中添加选择包含的文件夹并将其标记为Sources(蓝色图标)ShiftSlogback.xml

于 2011-04-10T15:48:58.920 回答
0

对我来说:我只需要重新构建项目(不仅仅是重新运行或重新编译项目)。更改src\main\resources\logback.xml不会影响 logback,因为类加载器正在拾取target/文件夹中的 logback.xml,而不是/src文件夹。这是有道理的,因为目标是运行环境。因此,需要构建以将新的 xml 文件传输到目标。

于 2021-02-25T00:09:30.860 回答