Galera, tenho uma aplicação Java Web com Springs e Maven (WAR) e estou tentando aplicar um auto deploy num servidor Linux utilizando Jekins. Estou tendo problemas relacionados a log:
SLF4J: Class path contains multiple SLF4J bindings.
SLF4J: Found binding in [jar:file:/opt/tomcat/webapps/innmanager/WEB-INF/lib/slf4j-log4j12-1.7.25.jar!/org/slf4j/impl/StaticLoggerBinder.class]
SLF4J: Found binding in [jar:file:/opt/tomcat/webapps/innmanager/WEB-INF/lib/slf4j-log4j12-1.7.0.jar!/org/slf4j/impl/StaticLoggerBinder.class]
SLF4J: Found binding in [jar:file:/opt/tomcat/webapps/innmanager/WEB-INF/lib/logback-classic-1.2.3.jar!/org/slf4j/impl/StaticLoggerBinder.class]
SLF4J: Actual binding is of type [org.slf4j.impl.Log4jLoggerFactory]
Porém, no WAR gerado na minha máquina apresenta somente um desses jar’s, já que os demais foram removidos a partir do Maven com <exclusions>
, conforme demonstro abaixo
pom.xml
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-thymeleaf</artifactId>
<exclusions>
<exclusion>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-logging</artifactId>
</exclusion>
</exclusions>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
<exclusions>
<exclusion>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-logging</artifactId>
</exclusion>
</exclusions>
</dependency>
target/projeto/WEB-INF/lib
Como consta na imagem acima, há somente o jar slf4j-api-1.7.0
por exemplo, e não a versão 1.7.25
, como consta no erro do servidor. Estou realizando o auto deploy através do jenkins, que se conecta com o git e a cada push na branch Master realiza um novo deploy. A cada nova tentativa recebo a mensagem The Tomcat Manager responded "FAIL - Deployed application at context path [/innmanager] but context failed to start " instead of the expected "OK" message
, e ao acessar o log tomcat/logs/catalina.out
me deparo novamente com as primeiras mensagens deste tópico, do conflito entre os jars.
Porém, acessando a pasta do war no próprio servidor tomcat/webapps/projeto/WEB-INF/libs
, constam ambas as versões 1.7.0
e 1.7.25
, dando razão ao conflito. Ao meu ver, as <exclusions>
estão sendo ignoradas no momento do auto deploy, porém ainda não consegui sanar este problema. Alguém já passou por algo parecido ou que consiga me ajudar a resolver este conflito de outra maneira?
Agradeço desde já