Java项目硅谷课堂后端报错处理总结
- 前言
- service_vod报错
-
- [import javax.servlet.http.HttpServletResponse;找不到](#import javax.servlet.http.HttpServletResponse;找不到)
- java.lang.IllegalStateException
- gateway报错
-
- [Failed to configure a DataSource](#Failed to configure a DataSource)
- [UnsatisfiedDependencyException: Error creating bean with name 'gatewayConfigurationService'](#UnsatisfiedDependencyException: Error creating bean with name 'gatewayConfigurationService')
- [Spring MVC found on classpath, which is incompatible with Spring Cloud Gateway at this time. Please remove spring-boot-starter-web dependency.](#Spring MVC found on classpath, which is incompatible with Spring Cloud Gateway at this time. Please remove spring-boot-starter-web dependency.)
前言
首先附上教学项目的B站地址:【尚硅谷&腾讯云】Java项目硅谷课堂丨微服务丨在线学习平台
本人只学习到93章。
service_vod报错
import javax.servlet.http.HttpServletResponse;找不到
在service_vod的pom文件中添加依赖:
java
<dependency>
<groupId>jakarta.servlet</groupId>
<artifactId>jakarta.servlet-api</artifactId>
</dependency>
java.lang.IllegalStateException
发生这一错误的原因在于版本冲突
,各位可以在idea打开的pom文件中,按键Ctrl + Alt + shift + u
,打开依赖图查看,如有红线则为冲突。
根据项目依赖导入一般是不会有错的,而我遇到则是因为在service
中去掉依赖:
java
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
去掉原因为:网关开启后提示去掉该依赖。如各位也和我一样,那么一定注意,将该依赖从service中去掉的同时,加入除开gateway模块的service中其他所有模块。
否则产生:idea中服务启动,但实际上无法使用端口,服务并未真正启动。
gateway报错
Failed to configure a DataSource
在项目网关模块启动类上加入注解
@SpringBootApplication(exclude= {DataSourceAutoConfiguration.class})
原因: SpringBoot 自动配置默认项目连接数据库,会扫描配置文件以连接数据库,而在我们的配置文件中没有相关配置。因为微服务中的网关服务不需要配置数据库,此时就会产生该错误。
UnsatisfiedDependencyException: Error creating bean with name 'gatewayConfigurationService'
去掉service
中的依赖:
java
<!-- <!–web 需要启动项目–>-->
<!-- <dependency>-->
<!-- <groupId>org.springframework.boot</groupId>-->
<!-- <artifactId>spring-boot-starter-web</artifactId>-->
<!-- </dependency>-->
Spring MVC found on classpath, which is incompatible with Spring Cloud Gateway at this time. Please remove spring-boot-starter-web dependency.
解决方法同上。