java—如何修正我在项目中使用的另一个库所使用的易受攻击的依赖关系?

zsohkypk  于 2021-07-24  发布在  Java
关注(0)|答案(1)|浏览(543)

我使用的是ApacheMaven3.6.3和SpringBoot1.5,没有微服务架构。我正在执行一项任务,以修复项目的依赖关系树中当前存在的易受攻击的依赖关系。logback classic就是其中之一。我可以更改顶级依赖项的版本(在顶级pom中),但无法将其版本从1.11.1升级到1.2.3,因为在一个子pom中使用的spring boot starter web starter中存在logback依赖项。
我可以排除以下版本:-

<dependencies>
   <dependency>
     <groupId>org.springframework.boot</groupId>
     <artifactId>spring-boot-starter-web</artifactId>
     <version>2.2.0.RELEASE</version>
     <exclusions>
        <exclusion>
            <groupId>ch.qos.logback</groupId>
            <artifactId>logback-classic</artifactId>
        </exclusion>
     </exclusions>
</dependency>

但是,我无法更新项目中某个jar的springbootstarterwebstarter的依赖树中存在的相同依赖的版本。我尝试使用标记as提供版本更新-

<project>
   ......
   <dependencyManagement>
        <dependencies>
             <dependency>
                  <groupId>ch.qos.logback</groupId>
                  <artifactId>logback-classic</artifactId>
                  <version>1.2.3</version>
                  <type>pom</type>
                  <scope>import</scope>
             </dependency>
        </dependencies>
   </dependencyManagement>

   <dependencies>
      <dependency>
         <groupId>org.springframework.boot</groupId>
         <artifactId>spring-boot-starter-web</artifactId>
         <version>2.2.0.RELEASE</version>
         <exclusions>
            <exclusion>
               <groupId>ch.quos.logback</groupId>
               <artifactId>logback-classic</artifactId>
            </exclusion>
         </exclusions>
      </dependency>
      ........
   </dependencies>

   ......
<project>

注意-在中,最初我也尝试不使用&标记,但无论如何,我只能排除易受攻击的logback经典依赖项,但我无法将其更新到spring boot starter web中的1.2.3版本,该版本存在于特定的子pom中。

dohp0rv5

dohp0rv51#

你提到的库(logback经典)有许多兼容性问题
正如您在其存储库的相关问题中所看到的
我建议您尝试不同版本的spring(较新版本),并检查github问题中的结果搜索,以查找您可能找到的版本和更新

相关问题