开发环境:
OS:Windows 10 专业工作站版 版本号1909
IDE:IntelliJ IDEA ULTIMATE 2020.1
JDK: 1.8
Maven: 3.6.0
MySql: 5.7
npm:6.14.4
node.js:12.16.3
Spring boot项目配置及启动
项目配置、编译
- 参考 项目wiki
配置及启动问题汇总
1、SQL脚本问题
- 问题:Navicat提示:
[ERR] 1273 - Unknown collation: 'utf8mb4_0900_ai_ci'
原因:导入的数据库文件是由高版本的MySQL生成的,高版本的utf8mb4_0900_ai_ci
字符集排序规则在5.7x版本下不受支持。
解决方案:将sql脚本中utf8mb4_0900_ai_ci
替换为utf8_general_ci
,utf8mb4
替换为utf8
后保存后重新导入即可。
参考文档:[ERR] 1273 - Unknown collation: ‘utf8mb4_0900_ai_ci’
2、依赖问题
-
Maven
- 问题:IDEA导入后无maven工具栏,无法下载相关依赖包
解决方案:右键项目目录下的pom.xml,选择添加为Maven项目,然后再clean
、install
- 问题:IDEA导入后无maven工具栏,无法下载相关依赖包
-
npm
-
问题:执行
npm install
后依赖下载超时等各种问题
原因:由于国内网络问题导致下载超时或资源不可用
解决方案:替换为Ali的淘宝镜像,并使用cnpm
代替npm
-
问题:运行
npm run dev
提示xx依赖不存在,Error: Cannot find module xxx
解决方案:更换镜像,手动下载指定资源,以node-saas为例,
首先将cnpm的镜像设置为淘宝:npm install -g cnpm --registry=https://registry.npm.taobao.org
手动下载资源:cnpm install node-sass
然后再启动项目:npm run dev
参考文档:解决Error: Cannot find module 'node-sass’问题
-
3、后端启动问题汇总
- 问题:Windows下提示8081端口被占用
解决方案:手动停止8081端口下的服务
CMD控制台下输入:netstat -aon|findstr "8081"
找到占用的服务资源
手动杀掉进程:C:\Users\hucon>netstat -aon|findstr "8081" TCP 0.0.0.0:8081 0.0.0.0:0 LISTENING 13688 TCP [::]:8081 [::]:0 LISTENING 13688
taskkill /t /f /pid 13688
- 问题:Redis未正常启动,导致验证码无法正常显示,控制台提示
Unable to connect to localhost:6379
原因:Redis服务器未启动
解决方案1:手动启动Redis,在安装目录下双击redis-server.exe
即可
解决方案2:将Redis服务注册到windows本地服务中,即可开机启动。
在Redis安装目录下执行redis-server --service-install redis.windows-service.conf --loglevel verbose
即可