spring boot使用spring-boot-starter-thymeleaf报Provides transitive vulnerable dependency org.yaml:snakeyaml:1.33
时间: 2023-05-29 14:07:15 浏览: 925
这是因为Spring Boot使用了Thymeleaf模板引擎,而Thymeleaf依赖于SnakeYAML库。而SnakeYAML 1.33版本存在安全漏洞,因此造成了提供的传递性漏洞依赖。
为了解决这个问题,可以尝试升级SnakeYAML库到最新版本,或者使用一个不受影响的版本。可以在Maven或Gradle构建文件中指定一个特定版本的SnakeYAML库,例如:
```
<dependency>
<groupId>org.yaml</groupId>
<artifactId>snakeyaml</artifactId>
<version>1.27</version>
</dependency>
```
或者
```
implementation('org.yaml:snakeyaml:1.27')
```
注意,这可能会导致其他依赖项出现问题,因此最好在升级或更改依赖项之前进行全面测试。
相关问题
<dependency> <groupId>org.thymeleaf</groupId> <artifactId>thymeleaf</artifactId> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-thymeleaf</artifactId> </dependency> 这俩个依赖区别是什么
这两个依赖都与 Thymeleaf 模板引擎有关,但是有一些区别。
第一个依赖是 `org.thymeleaf:thymeleaf`,它是 Thymeleaf 的核心依赖,提供了 Thymeleaf 的基本功能,但是它并没有集成到 Spring Boot 中。如果你要在 Spring Boot 中使用 Thymeleaf,还需要自己进行配置。
第二个依赖是 `org.springframework.boot:spring-boot-starter-thymeleaf`,它是 Spring Boot 集成 Thymeleaf 的依赖,包含了 `org.thymeleaf:thymeleaf` 以及其他一些必要的依赖项,使得在 Spring Boot 中使用 Thymeleaf 更加方便。使用这个依赖后,Spring Boot 会自动配置 Thymeleaf 模板引擎,你可以直接使用 Thymeleaf 来开发应用程序,而不需要进行额外的配置。
因此,如果你在 Spring Boot 中使用 Thymeleaf,建议使用第二个依赖,这样可以更加方便地集成 Thymeleaf。
阅读全文