搭建若依框架前后端分离版中遇到的种种问题记录

项目场景:

本着学习一下ruoyi框架的目的打算搭建起来若依框架的前后端分离版本,没想到,这个过程中遇到了各种拦路虎。这里一并做一下记录,希望对您有所帮助。


问题描述 1.

在搭建前端代码中,首先要用到npm。我不知道使用npm是不是一定要安装node.js。本着简单原则,我在node.js官网下载了对应的mac m1 版本的安装包,安装的时候发现可以选择只安装npm而不安装node.js。

安装好了npm后,顺便升级到了最新版本。安装依赖很顺利,使用npm install即可。

但是当我运行 npm run dev的时候,报了一个这样的错误,意思是“数字包程序不支持”

Error message "error:0308010C:digital envelope routines::unsupported"

原因:

Node.js 17+版本中使用了OpenSSL3.0 ,而OpenSSL3.0对允许算法和密钥大小增加了严格的限制导致了这个问题的出现。

解决:

方法1:降回到 Node.js16去。

方法2:将package.json 中的 scripts部分修改,目的是将OpenSSL降回老策略,如下所示:

"scripts": {
    "dev": "vue-cli-service serve",
    "build:prod": "vue-cli-service build",
    "build:stage": "vue-cli-service build --mode staging",
    "preview": "node build/index.js --preview",
    "lint": "eslint --ext .js,.vue src"
  }

改为

"scripts": {
    "dev": "export NODE_OPTIONS=--openssl-legacy-provider && vue-cli-service serve",
    "build:prod": "export NODE_OPTIONS=--openssl-legacy-provider && vue-cli-service build",
    "build:stage": "export NODE_OPTIONS=--openssl-legacy-provider && vue-cli-service build --mode staging",
    "preview": "node build/index.js --preview",
    "lint": "eslint --ext .js,.vue src"
  },

问题描述 2.

若依框架中logback.xml文件中默认的日志路径是/home/ruoyi/logs/。而mac系统home目录默认是不允许操作的。所以,我们需要把日志目录更换,mac下替换为/Users/***/ruoyi/logs/即可,星号为你的用户名。windows下可以设置一个绝对路径或者相对路径都可以。home一般是linux系统下使用。

至此,前端顺利的跑起来了。接下来我们把后端也搭建起来。

这个时候,出现了问题 3 .

启动的时候提示:

ruoyi Caused by: io.netty.channel.AbstractChannel$AnnotatedConnectException: Connection refused: /127.0.0.1:6379

Unable to connect to Redis

就是不能链接redis呗,哎,折腾,redis还没有安装,必须安排起来。不想,安装redis中又遇到了新的问题。

首先,我还没有安装Homebrew,先把这个整起来吧。

/bin/zsh -c "$(curl -fsSL https://gitee.com/cunkai/HomebrewCN/raw/master/Homebrew.sh)"

完了之后呢安装redis。 

brew install redis

安装过程中遇到问题 4。 

 Command failed with exit 128:git 

输入brew -v后会提示你执行两个配置命令

git config --global --add safe.directory /opt/homebrew/Library/Taps/homebrew/homebrew-cask

git config --global --add safe.directory /opt/homebrew/Library/Taps/homebrew/homebrew-core

然后就开始漫长的下载redis。我中途换了几个源,发现还是一样的慢,导致不停的因为慢而出错停止下载。于是得想办法加快下载速度啊。这个时候就要使用科学了。

对,就是这样,然后把复制好的东西拷贝到终端去,执行,然后下载。那叫一个快啊!!!10秒后全部搞定。

接着我不得启动redis嘛,启动

问题5出现了……

Error: uninitialized constant Homebrew::Service::System

解决办法:

cd /opt/homebrew/Library/Taps/homebrew

rm -rf /opt/homebrew/Library/Taps/homebrew/homebrew-services

然后通过brew tap指令更新homebrew-services:

brew tap homebrew/services
 

 到此为止,终于大功告成,前后端都起起来了。我在想,为啥我安装若依框架,遇到这么多问题呢?我得晚上好好反思一下。

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
若依框架是一个基于Spring Boot、Spring Security、MyBatis-plus、Vue、Element-UI的快速开发平台,它采用前后端分离的方式进行开发。它包含了许多常用的功能,如用户管理、角色管理、菜单管理、部门管理、字典管理、定时任务等等,并提供了代码生成器、日志管理、在线用户管理等扩展功能,可以快速搭建企业级应用。\[1\] 若依框架前后端分离版包含以下几个模块: - ruoyi-admin: 后台服务,用于启动和配置数据库。 - ruoyi-common: 通用工具,包括工具类、异常处理、过滤器等。 - ruoyi-framework: 框架核心,包括aop切面、系统配置、拦截器等。 - ruoyi-generator: 代码生成器,通过页面操作生成代码。 - ruoyi-quartz: 定时任务模块。 - ruoyi-system: 系统模块,包含系统代码。 - ruoyi-ui: 后台管理系统的页面代码,采用Vue和Element UI作为前端框架。\[2\] 要搭建若依框架前后端分离版,需要满足以下环境要求: - JDK >= 1.8 (推荐1.8版本) - MySQL >= 5.7.0 (推荐5.7版本) - Maven >= 3.0 - Node >= 12.0 - Redis >= 5\[2\] 在搭建环境完成后,可以执行相应的命令来启动若依框架。执行成功后,可能会遇到数据表不显示的问题。这时需要在数据库中刷新表,可以在表上点击鼠标右键,选择刷新,即可显示出所有的表。\[3\] #### 引用[.reference_title] - *1* [若依框架——前后端分离版](https://blog.csdn.net/moran_3346/article/details/131803190)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insertT0,239^v3^insert_chatgpt"}} ] [.reference_item] - *2* *3* [使用若依框架RuoYi前后端分离版(超详细步骤)](https://blog.csdn.net/thewhat/article/details/131264175)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insertT0,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值