Estamos usando Spring Boot 2.1.5 y el padre de inicio como dependencia de pom.
Spring Boot está utilizando el inicio de sesión predeterminado para iniciar sesión y no hemos cambiado explícitamente a Log4j2 ni hemos cambiado ninguna configuración. A continuación se muestra el árbol de dependencia de nuestro proyecto.
Tenemos muchas anotaciones lombok @log4j2 en nuestro proyecto. Pero encontramos en el árbol de dependencia que no tenemos ninguna dependencia de jar de log4j2-core (que se ha encontrado vulnerable a problemas recientes con log4j).
@Log4j2 @Service @DependsOn("applicationDependencyCheck")¿Lombok @log4j2 no depende de log4j2-core.jar? ¿Es correcto suponer que esto aparecería en el árbol de dependencia de Maven o nos estamos perdiendo algo?
Esta es nuestra entrada lombok -
<dependency> <groupId>org.projectlombok</groupId> <artifactId>lombok</artifactId> <optional>true</optional> </dependency>Por favor, comparta algunas ideas.
Gracias
En la documentación de lombok, puede encontrarlo aquí https://projectlombok.org/api/lombok/extern/log4j/Log4j2.html
@ Log4j2 clase pública LogExample { }
Generará:
clase pública LogExample { private static final org.apache.logging.log4j.Logger log = org.apache.logging.log4j.LogManager.getLogger(LogExample.class); }
Ambas clases están presentes en el jar API log4j
No hay vulnerabilidades conocidas enumeradas aquí https://mvnrepository.com/artifact/org.apache.logging.log4j/log4j-api
Como se describe aquí https://logging.apache.org/log4j/2.x/log4j-api/index.html log4j api es solo una interfaz.
Creo que, en tal caso, su código no depende del núcleo log4j. Puede verificar dos veces la salida de la compilación (por ejemplo, carpeta maven / target, archivo war, etc.)