gpt4 book ai didi

java - 尽管在 spring-boot-maven-plugin 中配置了排除,但日志依赖项仍然包含在 lib 文件夹中

转载 作者:行者123 更新时间:2023-12-02 00:29:39 26 4
gpt4 key购买 nike

编辑:事实证明我只是不擅长寻找东西。更改之前的 war 没有这些库,并且原始 .war(重新打包之前)已经包含它们。所以问题出在别的地方, spring-boot-maven-plugin 与它无关。仍然不知道它们来自哪里,因为我也尝试过简单地删除找到的依赖项,但是哦,好吧,请参阅我的第一句话。

我正在努力使我的公司软件作为 Spring Boot 应用程序运行。由于我们的war可能部署在SAP Cloud Platform等各种不同的环境中,因此日志库不应该包含在lib文件夹中以防止冲突。但是,无论我的排除项变得多么具体,一些日志记录库(特别是 jul-to-slf4j、log4j-api 和 log4j-to-self4j)始终位于我的 lib 文件夹中。其他库(我们的两个库需要测试或必须包含在类文件中)被正确排除。

我尝试将标签设置为特定库以及排除整个组。之后,我尝试简单地排除依赖项本身,但在 mvn dependency:tree 告诉我它们不再存在后,它们仍然以某种方式出现。

这是插件配置:

<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
<executions>
<execution>
<goals>
<goal>
repackage
</goal>
</goals>
</execution>
</executions>
<configuration>
<mainClass>de.firm.integration.BaseSpringConfiguration</mainClass>
<excludes>
<exclude>
<groupId>de.firm.integration</groupId>
<artifactId>eis-generator-odata-api</artifactId>
</exclude>
<exclude>
<groupId>de.firm.integration</groupId>
<artifactId>eis-admin-ui</artifactId>
</exclude>
<exclude>
<groupId>org.slf4j</groupId>
<artifactId>jul-to-slf4j</artifactId>
</exclude>
<exclude>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-log4j2</artifactId>
</exclude>
<exclude>
<groupId>org.apache.logging.log4j</groupId>
<artifactId>log4j-jul</artifactId>
</exclude>
<exclude>
<groupId>org.apache.logging.log4j</groupId>
<artifactId>log4j-api</artifactId>
</exclude>
<exclude>
<groupId>org.apache.logging.log4j</groupId>
<artifactId>log4j-to-slf4j</artifactId>
</exclude>
</excludes>
</configuration>
</plugin>

我希望我构建的 war 不再将这些日志记录库包含在我的 WEB-INF/lib 文件夹中。相反,它们继续被包含在内。

最佳答案

试试这个... Including and Excluding Files From the WAR

It is possible to include or exclude certain files from the WAR file, by using the <packagingIncludes> and <packagingExcludes> configuration parameters.

因此,您基本上只需指定 WEB-INF/lib/log4j-.jar、WEB-INF/lib/jul-.jar 在这些标签中排除所有以 log4j 和 jul 开头的包。

<plugins>
<plugin>
<artifactId>maven-war-plugin</artifactId>
<version>3.2.3</version>
<configuration>
<packagingExcludes>
WEB-INF/lib/log4j-*.jar, WEB-INF/lib/jul-*.jar
</packagingExcludes>
</configuration>
</plugin>
</plugins>

关于java - 尽管在 spring-boot-maven-plugin 中配置了排除,但日志依赖项仍然包含在 lib 文件夹中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58025873/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com