《尚上优选》项目Bug记录
写在前面
本项目为该系列第二个项目,有一些问题如果没有在本文摘录,可以到
《云尚办公》项目 BUG记录 中查找是否有类似的解决方案。
(2024.3.24以下)
- (P11) 管理端前端node20版本启动报OpenSSL错误
- 经典问题,把webpack文件夹替换可用版本即可。参考《云尚办公》项目 BUG记录
- (P12) 启动后端时,报错找不到mp的innerInterceptor类
- 其实到这一步已经忘记最早出问题的是什么东西了。一开始怀疑是因为用的是jdk17而不是jdk8导致的,而且pom里面的jdk版本写的很混乱,所以就装了jdk8尝试运行。jdk8安装后,虽然所有pom都改到了8,项目sdk也改成了jdk1.8,但还是运行不了,显示需要java版本52,不支持在java61版本运行。然后调jdk环境变量,因为出现了java版本1.8但是javac版本17的问题,于是又去找教程重装了一下Java,然而也没有用。之后去云尚办公里面复制了一个maven编译为1.8的插件过来,这次是显示找不到Interceptor类。于是又重新搭了一次项目,然而还是把上面的错误又犯了一次。因为说是中不到mp的类,怀疑是之前用maven强制更新导致maven仓库出问题了,于是把仓库情空重新下载,还是没有用。之后和云尚办公里面的代码对比,发现springboot和mp的版本都是一样的,mp配置文件也是一样的,按说应该能运行。于是把出现interceptor报错的mp配置文件给注释掉了,结果居然运行成功了。之后再对比云尚办公的pom文件,发现尚上优选的pom里多了一个provided属性。注释掉后报错变为了没有数据库connector, 于是直接添加jdbc的依赖,问题解决,成功运行。
- 加入角色管理MVC后,加载项目显示找不到实体类
- 一开始是手动加了一个实体类的依赖,但是没用,随后又优化一下项目结构(之前service-acl是parent的子模块,现在移到service下了),还是没用,检查实体类的编译文件,发现classes文件夹里面是空的。这下认定是编译出了问题。然后把lombok依赖注释掉,发现能编译了。于是又检查版本管理,发现这个项目里lombok是默认用插件的,在父工程里指定lombok版本下载就可以了。
(2024.3.24)
- 添加用户角色管理模块后,添加用户角色失败
- 报错信息显示adminId作为必须参数未被注入,检查后发现Service里把参数写成了adminID.
(2024.3.25)
- 添加仓库api后,在前端进入仓库管理页面时报403但数据正常显示
- 没加@CrossOrigin
(2024.3.26)
- 添加SKU查询后,前端显示Network Error,但是后端返回了数据
- 后端controller没用加@CrossOrigin. 不知道为什么昨天的问题一样但是能显示数据,今天的不行
(2024.3.29)
- 活动模块加装后,前端访问报403
- 没加@CrossOrigin.其次后端接口和前端不一致。
- 访问活动列表,后端mp报错找不到枚举类
- 需要在yml配置文件里设置mp寻找enum类的路径
(2024.3.29发现,3.30解决)
- 访问活动规则,除了第一个端午活动以外,访问其它规则都会报错
- Jackson配置问题,需要把允许单值转换为数组打开
- mybatis的if标签失效
-实验了一下,发现传字符串可以,但是传数字或者数据库里面没有的数据时就会报错。查看后台发现拼接的sql语句有问题,虽然没有if里面的语句体,但还是会显示where id in.
缺少了后面本应该接上的括号和里面的参数值。应该是调用的product端口有问题,导致没有查到时不会正常返回数据。测试了一下发现确实是这个原因,product模块的api只会在查到数据时正常返回。此时只需要在调用完远程端口后,如果说空的,就直接方法返回空值,这样就不会引起接下来的sql语句错误。
(2024.3.30)
- 保存活动规则报错
- 把activity_id写成了activityId
(2024.3.31)
- JWT类无法使用
-
- 新版本JDK(9以上)已经取消了javax.xml.bind.DatatypeConverter ,需要手动添加maven依赖。
-
- 需要在maven里把spring-boot-starter-web的provide属性取消,不再只是提供接口,而是提供能用的工具类。
(2024.4.4)
- 加装redisson后,项目启动显示在创建redisson单例的时候因为调用私有string而报错
- 因为jdk9的新机制导致了以前的redisson配置方法失效,解决办法是把redisson升级至3.27.2
- Maven打包显示class lombok.javac.apt.LombokProcessor (in unnamed module @0x3c4e17ea) cannot access class com.sun.tools.javac.processing.JavacProcessingEnvironment (in module jdk.compiler) because module jdk.compiler does not export com.sun.tools.javac.processing to unnamed module @0x3c4e17ea
- 非常要命,修了很久,一开始以为是使用了lombok的模块出问题,于是把这个模块的lombok依赖升级到了最新版,没用,按照gpt说的加了个插件也没用,然后编译发现隔壁模块也会报错,发现隔壁模块也加了lombok依赖,结果还是不行。再尝试去掉@Data注解手动写,结果发现效率太低。又尝试把jdk降级到1.8,结果又出了一堆问题。于是尝试分别编译(此时学会了要先install才能让别的模块依赖到本模块),发现model模块和common模块编译都没问题。然后gateway模块编译也能正常通过。之后编译service-client,这时出问题了,而且每次编译,报错的子模块是不一样的,也就是说不是某一个模块出了问题。于是在service-client里面加上了lombok依赖,此时果然能编译了。之后编译service模块也出了一样的问题,加上lombok依赖就行。
相关文章:
《尚上优选》项目Bug记录
写在前面 本项目为该系列第二个项目,有一些问题如果没有在本文摘录,可以到 《云尚办公》项目 BUG记录 中查找是否有类似的解决方案。 (2024.3.24以下) (P11) 管理端前端node20版本启动报OpenSSL错误 经典问题,把we…...
Flutter 中的 PopupMenuTheme 小部件:全面指南
Flutter 中的 PopupMenuTheme 小部件:全面指南 Flutter 是一个由 Google 开发的跨平台 UI 框架,它允许开发者使用 Dart 语言构建美观、响应式的移动、Web 和桌面应用。Flutter 的 Material 组件库中包含了丰富的 UI 组件,其中 PopupMenuButt…...

uni-app的网络请求库封装及使用(同时支持微信小程序)
其实uni-app中内置的uni.request()已经很强大了,简单且好用。为了让其更好用,同时支持拦截器,支持Promise 写法,特对其进行封装。同时支持H5和小程序环境,更好用啦。文中给出使用示例,可以看到使用变得如此…...
力扣524. 通过删除字母匹配到字典里最长单词
给你一个字符串 s 和一个字符串数组 dictionary ,找出并返回 dictionary 中最长的字符串,该字符串可以通过删除 s 中的某些字符得到。 如果答案不止一个,返回长度最长且字母序最小的字符串。如果答案不存在,则返回空字符串。 示…...

【代码随想录】【算法训练营】【第27天】 [39]组合总和 [40] 组合总和II [131]分割回文串
前言 思路及算法思维,指路 代码随想录。 题目来自 LeetCode。 day26, 休息的周末~ day 27,周一,库存没了,哭死~ 题目详情 [39] 组合总和 题目描述 39 组合总和 解题思路 前提:组合的子集问题&…...
解决 git 命令 Problem with the SSL CA cert (path? access rights?)
/etc/pki/nssdb 错误 运行命令: GIT_CURL_VERBOSE1 git clone git_repo_url 会输出详细错误信息 Cloning into fp_sdk... * Couldnt find host xxx.com in the .netrc file; using defaults * About to connect() to xxx.com port 443 (#0) * Trying 10.44.52.7…...

详解:重庆耶非凡的选品师项目有哪些优势?
在竞争激烈的电商市场中,重庆耶非凡科技有限公司凭借其独特的选品师项目,成功地在众多企业中脱颖而出。这一项目不仅体现了公司对市场趋势的敏锐洞察力,更彰显了其专业的选品能力和对消费者需求的深刻理解。 首先,耶非凡的选品师项…...
DSP28335模块配置模板系列——GPIO配置模板
在自己的电脑上构建出一套模块配置模板,可以大幅节省DSP程序开发时间,从而达到事半功倍的效果。对于初学者,掌握了模块配置,也就能实现大部分的单片机功能。 在DSP28335模块配置模板系列,不仅会给出GPIO、ADC、EQEP、E…...
【SringBoot项目中MyBatis-Plus多数据源应用实践】
文章目录 前言 一、Mybatis-Plus是什么? 二、多数据源是什么? 三、使用步骤 1. 新建一个SpringBoot项目 2. 引入必要的MyBatis架包 3. 新建两个数据库及两张表 3.3.1 新建数据库:DB_A,并创建一张数据表alarm_kind,以及…...

Android 图表开发开源库 MPAndroidChart 使用总结
1. 引言 电视项目中需要一个折线图表示节电数据变化情况,类比 H5 来说,Android 中也应该有比较成熟的控件,经过调研后,发现 MPAndroidChart 功能比较强大,网上也有人说可能是目前 Android 开发最好用的一个三方库了&a…...
手机号脱敏
手机号脱敏 // 手机号脱敏subTelephone(telphone) {let result telphone.substr(0, 4) **** telphone.substr(8);return result;},...

java基础篇(1)
JDK是什么?有哪些内容组成?JDK是Java开发工具包 JVM虚拟机: Java程序运行的地方 核心类库: Java已经写好的东西,我们可以直接用开发工具: javac、java、jdb、jhat.. JRE是什么?有哪些内容组成? JRE是Java运行环境 JVM、核心类库、运行工具 JDK,JRE&…...

2022年全国职业院校技能大赛高职组“信息安全管理与评估”赛项第三阶段任务书
第三阶段竞赛项目试题 本文件为信息安全管理与评估项目竞赛-第三阶段试题。根据信息安全管理与评估项目技术文件要求,第三阶段为夺旗挑战CTF(网络安全渗透)。 本次比赛时间为180分钟。 介绍 夺旗挑战赛(CTF)的目标…...

微信小程序蓝牙连接部分Android14调用wx.setBLEMTU协商低功耗最大传输单元失败解决方案(部分安卓14设置超过23就会报错)
1.解决方案的核心内容:第一次设置失败不要管,在complate函数里面继续往下连接,然后设置一个定时器每1秒钟在重新设置一次,肯定会成功的!!!!!!!&am…...
PDF格式分析(八十二)——电影注释(movie)
电影注释(PDF1.2及其以上版本),该注释包含图像和声音,声音通过扬声器进行播放,图像则显示在计算机屏幕上,如同一个视频播放器一样。当该类型注释被激活时,视频将被播放。 下表将显示电影注释的字典条目: 条…...
Opentracing 代码Demo
背景 OpenTracing 是一个提供标准化分布式追踪功能的API和工具。它的主要作用包括: 跨系统边界追踪请求流程:OpenTracing 允许开发者跟踪一个请求从开始到结束在整个分布式系统中的所有经过的点(包括异构系统),帮助理解系统中的请求流程和服务间的相互依赖。 性能分析和瓶…...
笔记93:关于 C++ 中的 Eigen 库
注意1:Eigen 是一个基于 C 模板的线性代数库,以支持在 C 中进行矩阵运算; 注意2:要在 C 中使用 Eigen,需要在在程序开始前要包含所需头文件路径; #include <Eigen> a a 基础用法汇总 定义向量 E…...

【微服务】部署mysql集群,主从复制,读写分离
两台服务器做如下操作 1.安装mysqldocker pull mysql:5.72.启动以及数据挂载 mkdir /root/mysql/data /root/mysql/log /root/mysql/conf touch my.conf //mysql的配置文件docker run --name mysql \ -e MYSQL_ROOT_PASSWORD123456 \ -v /root/mysql/data:/var/lib/mysql \ -v…...

【Java】设计一个支持敏感数据存储和传输安全的加解密平台
一、问题解析 在一个应用系统运行过程中,需要记录、传输很多数据,这些数据有的是非常敏感的,比如用户姓名、手机号码、密码、甚至信用卡号等等。这些数据如果直接存储在数据库,记录在日志中,或者在公网上传输的话&…...
iOS AVFoundation 音视频源码分享
引言 在现代移动开发中,音视频处理是一个不可忽视的重要领域。iOS 提供了强大的 AVFoundation 框架,使开发者能够轻松实现音视频录制、播放、编辑等功能。无论是创建高效的视频播放器,还是实现复杂的音频处理,AVFoundation 都能提…...

黑马Mybatis
Mybatis 表现层:页面展示 业务层:逻辑处理 持久层:持久数据化保存 在这里插入图片描述 Mybatis快速入门 
解决Ubuntu22.04 VMware失败的问题 ubuntu入门之二十八
现象1 打开VMware失败 Ubuntu升级之后打开VMware上报需要安装vmmon和vmnet,点击确认后如下提示 最终上报fail 解决方法 内核升级导致,需要在新内核下重新下载编译安装 查看版本 $ vmware -v VMware Workstation 17.5.1 build-23298084$ lsb_release…...
Auto-Coder使用GPT-4o完成:在用TabPFN这个模型构建一个预测未来3天涨跌的分类任务
通过akshare库,获取股票数据,并生成TabPFN这个模型 可以识别、处理的格式,写一个完整的预处理示例,并构建一个预测未来 3 天股价涨跌的分类任务 用TabPFN这个模型构建一个预测未来 3 天股价涨跌的分类任务,进行预测并输…...
渲染学进阶内容——模型
最近在写模组的时候发现渲染器里面离不开模型的定义,在渲染的第二篇文章中简单的讲解了一下关于模型部分的内容,其实不管是方块还是方块实体,都离不开模型的内容 🧱 一、CubeListBuilder 功能解析 CubeListBuilder 是 Minecraft Java 版模型系统的核心构建器,用于动态创…...
【HTML-16】深入理解HTML中的块元素与行内元素
HTML元素根据其显示特性可以分为两大类:块元素(Block-level Elements)和行内元素(Inline Elements)。理解这两者的区别对于构建良好的网页布局至关重要。本文将全面解析这两种元素的特性、区别以及实际应用场景。 1. 块元素(Block-level Elements) 1.1 基本特性 …...

让AI看见世界:MCP协议与服务器的工作原理
让AI看见世界:MCP协议与服务器的工作原理 MCP(Model Context Protocol)是一种创新的通信协议,旨在让大型语言模型能够安全、高效地与外部资源进行交互。在AI技术快速发展的今天,MCP正成为连接AI与现实世界的重要桥梁。…...

SAP学习笔记 - 开发26 - 前端Fiori开发 OData V2 和 V4 的差异 (Deepseek整理)
上一章用到了V2 的概念,其实 Fiori当中还有 V4,咱们这一章来总结一下 V2 和 V4。 SAP学习笔记 - 开发25 - 前端Fiori开发 Remote OData Service(使用远端Odata服务),代理中间件(ui5-middleware-simpleproxy)-CSDN博客…...
智能AI电话机器人系统的识别能力现状与发展水平
一、引言 随着人工智能技术的飞速发展,AI电话机器人系统已经从简单的自动应答工具演变为具备复杂交互能力的智能助手。这类系统结合了语音识别、自然语言处理、情感计算和机器学习等多项前沿技术,在客户服务、营销推广、信息查询等领域发挥着越来越重要…...

uniapp 小程序 学习(一)
利用Hbuilder 创建项目 运行到内置浏览器看效果 下载微信小程序 安装到Hbuilder 下载地址 :开发者工具默认安装 设置服务端口号 在Hbuilder中设置微信小程序 配置 找到运行设置,将微信开发者工具放入到Hbuilder中, 打开后出现 如下 bug 解…...
学习一下用鸿蒙DevEco Studio HarmonyOS5实现百度地图
在鸿蒙(HarmonyOS5)中集成百度地图,可以通过以下步骤和技术方案实现。结合鸿蒙的分布式能力和百度地图的API,可以构建跨设备的定位、导航和地图展示功能。 1. 鸿蒙环境准备 开发工具:下载安装 De…...