Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/redis/2.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
Spring boot 带有嵌入式Tomcat的Spring Boot中的Log4J2_Spring Boot_Log4j2_Tomcat8 - Fatal编程技术网

Spring boot 带有嵌入式Tomcat的Spring Boot中的Log4J2

Spring boot 带有嵌入式Tomcat的Spring Boot中的Log4J2,spring-boot,log4j2,tomcat8,Spring Boot,Log4j2,Tomcat8,我试图让Spring引导中的嵌入式Tomcat记录到我的Log4J2配置中,但它不起作用 根据这个与外部Tomcat打交道的答案:似乎需要将一些罐子移动到$Catalina_home/libs等。我认为这在Spring Boot中是不可能的,不是吗 是否有人设法让log4j2运行并能够为catalina日志配置appenders 提前感谢编辑:最简单的方法是添加spring-boot-starter-log4j2 <dependency> <groupI

我试图让Spring引导中的嵌入式Tomcat记录到我的Log4J2配置中,但它不起作用

根据这个与外部Tomcat打交道的答案:似乎需要将一些罐子移动到$Catalina_home/libs等。我认为这在Spring Boot中是不可能的,不是吗

是否有人设法让log4j2运行并能够为catalina日志配置appenders


提前感谢编辑:最简单的方法是添加
spring-boot-starter-log4j2

    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-log4j2</artifactId>
    </dependency>

org.springframework.boot
spring-boot-starter-log4j2

N.B.确保其他组件不需要不同版本的log4j。这可能会导致运行时错误。e、 g.
elasticsearch
JavaAPI需要2.6+并且
spring-boot-starter-log4j2:1.3.8
提供了
log4j:2.4.1
,如果我们正在构建一个连接elasticsearch并使用spring-boot的应用程序的话。然后,我们将最终得到NoSuchMethodError或类似的错误。为了解决这些错误,我们应该在
pom

中添加
log4j2:2.6+
,您使用的是哪个Spring引导版本?我相信1.4.x.RELEASE将其提升到log4j2。 如@M.Deinum所述,包括:

<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-log4j2</artifactId>
    <version>1.4.6.RELEASE</version>
</dependency>

多么复杂的方式。。。只需添加
spring-boot-starter-log4j2
,而不是您所做的。尝试过,但不起作用。它为org.apache.logging.log4j.Logger.@M.Deinum造成了很多NoSuchMethodErrors错误。添加log4j2 api和log4j2 core不会解决此类方法错误。我想知道是否有更合适的方法!添加core和api基本上违背了使用starter的目的。初学者的要点是不需要添加这些依赖项。如果您没有遇到这样的方法错误,那么可能还有其他问题,您可能会把事情与其他依赖项弄糟。
     <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-actuator</artifactId>
        <exclusions>
            <exclusion>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-starter-logging</artifactId>
            </exclusion>
        </exclusions>
    </dependency>