欢迎光临散文网 会员登陆 & 注册

Java项目《谷粒商城》Java架构师 | 微服务 | 大型电商项目

2023-02-03 09:12 作者:安逸的咸鱼__  | 我要投稿

踩坑合集

使用版本(相对老师更高)

springboot 2.7.8

springcloud 2021.0.5

springcloud alibaba 2021.0.4.0

p6 无法以在线的方式安装 centos

  1. 从 cmd 中获取镜像链接,用 fdm 离线下载
  2. 将镜像添加到管理列表,vagrant box add <box-name> <box-path>
  3. 初始化镜像,vagrant init <box-name>
  4. 启动镜像,vagrant up


p16 npm 安装 node-sass 速度慢/错误

配置文件的路径:win:C:\Users\[你的账户名称]\.npmrc

1) 修改为淘宝镜像

npm config set registry https://registry.npm.taobao.org

2) 设置 sass 的来源

sass_binary_site=https://npm.taobao.org/mirrors/node-sass/

3) 卸载 saas,再次安装

npm uninstall saas

npm install saas


p22 引入 srpingcloud openfeign 项目启动报错

由于Spring Cloud Feign在Hoxton.M2 RELEASED版本之后不再使用Ribbon而是使用spring-cloud-loadbalancer,所以不引入spring-cloud-loadbalancer会报错.

  1. nacos中排除ribbon依赖
  2. 引入 spring-cloud-loadbalancer


p25 nacos 多配置不生效

需要将相关的配置(如连接 nacos,nacos 多配置文件数据),需要填写到 bootstrap.yml/bootstrap.properties 文件

2020版本以后,官方重构了bootstrap引导配置的加载方式,还需添加spring-cloud-starter-bootstrap依赖,使nacos读取


p27 gulimall-gateway 创建后无法运行

gulimall-common 中已引入 spring-boot-starter-web,spring-cloud-start-gateway 中也引入了这个包

在 gateway 的 pom.xml 里,common依赖排除 start-web 即可


P46 renren-fast 注册到服务中心

报错1

java.lang.NoSuchMethodError: 'com.google.common.collect.UnmodifiableIterator com.google.common.collect.Sets$SetView.iterator()'

解决

追加依赖

<dependency>
 <groupId>com.google.guava</groupId>
 <artifactId>guava</artifactId>
 <version>30.1-jre</version>
</dependency>

报错2

Caused by: java.lang.NullPointerException: Cannot invoke "org.springframework.web.servlet.mvc.condition.PatternsRequestCondition.toString()" because the return value of "springfox.documentation.spi.service.contexts.Orderings.patternsCondition(springfox.documentation.RequestHandler)" is null

原因

springboot2.6.x 往上,starter-actuator 和 swagger2 版本间存在冲突

解决

引入的 common 依赖,排除 spring-boot-starter-actuator

<dependency>
 <groupId>com.agg.gulimall</groupId>
 <artifactId>gulimall-common</artifactId>
 <version>0.0.1-SNAPSHOT</version>
 <exclusions>
  <exclusion>
   <groupId>org.springframework.boot</groupId>
   <artifactId>spring-boot-starter-actuator</artifactId>
  </exclusion>
 </exclusions>
</dependency>


p47 网关配置后还报错跨域

老师的配置的 corsWebFilter() 中的配置需要变更

allowedOrigin 调整为 allowedOriginPatterns


p62 alicloud-oss 官方文档和老师视频里的不一致

  1. 依赖引入的不一致
  2. yml 配置不一致

按老师的配置

xml
<dependency>
 <groupId>com.alibaba.cloud</groupId>
 <artifactId>spring-cloud-starter-alicloud-oss</artifactId>
 <version>1.5.1.RELEASE</version>
</dependency>

yml
spring:
 cloud:
 alicloud:
  access-key: ***
  secret-key: ***
  oss:
   endpoint: ***
   bucket-name: ***

如果版本过高,会报错:

Parameter 0 of method inetIPv6Util in com.alibaba.cloud.nacos.utils.UtilIPv6AutoConfiguration required a single bean, but 2 were found:
   - spring.cloud.inetutils-org.springframework.cloud.commons.util.InetUtilsProperties: defined in unknown location
   - inetUtilsProperties: defined by method 'inetUtilsProperties' in class path resource [org/springframework/cloud/commons/util/UtilAutoConfiguration.class]

按 23 年阿里官网的配置

xml
<dependency>
 <groupId>com.alibaba.cloud</groupId>
 <artifactId>aliyun-oss-spring-boot-starter</artifactId>
 <version>1.0.0</version>
</dependency>
<dependency>
 <groupId>com.aliyun.oss</groupId>
 <artifactId>aliyun-sdk-oss</artifactId>
 <version>3.15.1</version>
</dependency>

yml
alibaba:
 cloud:
 access-key: ***
 secret-key: ***
 oss:
  endpoint: o***m
  bucket-name: ***



============================================

正在推进中,后续还有踩坑,继续补充

Java项目《谷粒商城》Java架构师 | 微服务 | 大型电商项目的评论 (共 条)

分享到微博请遵守国家法律