ELRIWebSystem/代码的编译指导.md

8.6 KiB
Raw Blame History

代码编译指南

更新zhanli@2023.12.17

目录

  1. 开发环境准备
  2. 代码导入
  3. 常见问题解决

一、开发环境准备

1.1 开发IDE

首先准备好开发工具,前端开发工具使用webstorm(下载地址:https://www.jetbrains.com/webstorm/ 后端开发工具使用IntelliJ IDEA(下载地址:https://www.jetbrains.com.cn/idea/

1.2 JDK的安装

已经安装完开发ide后准备java的环境安装jdk1.8

通过百度网盘分享的文件jdk-8u13…exe 链接:https://pan.baidu.com/s/1ZAzN-JBml0cKA9K-YI1erA 提取码7yh5

1.3 git安装

下载地址:https://git-scm.com/download/win git的一个代码管理软件

1.4 maven安装

Apache Maven是一个特别是Java编程项目管理及自动构建工具由Apache软件基金会所提供。基于项目对象模型缩写POM概念Maven利用一个中央信息片断能管理一个项目的构建、报告和文档等步骤。 百度网盘下载地址 https://pan.baidu.com/s/1jUfP_wWQ4hwj30CL8AIr8Q?pwd=g254

国外的maven镜像下载慢可以配置阿里云镜像

<mirror>
<id>nexus-aliyun</id>
<mirrorOf>central</mirrorOf>
<name>Nexus aliyun</name>
<url>[http://maven.aliyun.com/nexus/content/groups/public/](https://link.zhihu.com/?target=http%3A//maven.aliyun.com/nexus/content/groups/public/)</url>
</mirror>

1.5 mysql数据库安装

百度网盘链接:https://pan.baidu.com/s/1NH1NOzILhZpRbGxjDg8IgA 提取码ange 官网下载:https://downloads.mysql.com/archives/community/

1.6 navicat数据库工具安装

Navicat 数据库工具是一个可视化的MySQL数据库处理工具,通过图形界面的方式可以非常便捷的处理数据库的导入以及其他操作。

Navicat Premium 12.1.6下载: 链接:https://pan.baidu.com/s/16CPyQnR72l9661_jWXD7Pw 提取码yj41

1.7 node14版本安装

官网下载地址:https://nodejs.org/download/release/v14.21.3/

1.8 Redis的安装(windows)

Redis的官方是windows版本所以在官方无法下载到。

windows版Git下载https://github.com/microsoftarchive/redis/releases

私人云盘下载:http://logzhan.ticp.io:52440/GoWeb开发环境安装/Redis-Windows

账号uestc 密码 123

登录后可能进入到管理页面,此时选择主页或者再次粘贴云盘路径均可

启动方式:

# Git原版在powershell输入执行
.\redis-server.exe redis.windows.conf
# 云盘下载版:
直接运行run.bat即可

1.9 准备好环境后,可以下载若依源代码

下载地址:https://gitee.com/y_project/RuoYi-Vue 可以通过git来克隆代码也可以直接下载zip压缩包

img

二、代码导入

2.1 IDE项目导入

打开idea选择open->选择刚才下载的ruoyi代码目录

img

导入成功后系统会加载maven依赖包加载完毕如下图

img

下面针对上面的模块进行解说:

ruoyi-admin:     程序启动模块对前端提供restful接口
ruoyi-common:    通用模块,封装公共使用的模块,以后会针对这一块代码进行详细讲解
ruoyi-framework: 架构模块
ruoyi-generator: 代码生成模块
ruoyi-system:    用户权限管理模块
ruoyi-ui:        前端后端分离管理后台vue模块
sql:mysql:       数据库

2.2 将项目数据结构导入mysql数据库

打开navicat->新建数据库-》创建一个数据库名称是ry-vue

img

导入数据库-〉选择ry-vue数据库执行sql目录下面的数据库脚本

img

执行完成后数据库可以看到以下30张表其中sys开头的表是用户权限表qrtz开头的表就是定时程序相关的表

img

2.3 webstorm 导入前端工程

webstorm导入后的结构如下图

img

需要对项目进行npm进行编译将需要依赖的package引入点击webstorm最底部的termial输入命令

npm install

编译成功后显示如下:

img

2.4 启动前端和后端应用

1.启动前端。 如下图点击webstorm的npm展示了一个界面显示dev等命令选择dev-》右键运行

img

出现如下图的地址,表示正常启动

img

2.5 启动后端

2.5.1 检查连接的数据库是否正常

点击idea如下图的文件查看其中数据库连接的paasword需要修改成为你本地创建数据库的账号密码文件在ruoyi-admin/src/main/resources/application-druid.yml

img

2.5.2 需要修改日志文件目录

ruoyi-admin/src/main/resources/logback.xml需要修改 修改为本机的一个有效目录

img

2.5.3 启动应用

启动类 ruoyi-admin/src/main/java/com/ruoyi/RuoYiApplication

img

启动后,日志可以看到如下图,表示后端正常启动:

img

2.5.4 本地运行

前后端启动正常后,可以在浏览器打开 http://localhost:1024/login

img

输入账号密码登陆后端界面

img

三、常见问题解决

3.1 前端Vue报错

Vue 报错error:0308010C:digital envelope routines::unsupported

主要是因为 nodeJs V17 版本发布了 OpenSSL3.0 对算法和秘钥大小增加了更为严格的限制nodeJs v17 之前版本没影响,但 V17 和之后版本会出现这个错误。 我的node版本是v18+。

解决方式(仅限 windows:

在项目中 package.json 的 scripts 中新增 SET NODE_OPTIONS=--openssl-legacy-provider添加前

"scripts": {
"dev": "vue-cli-service serve",
"build:prod": "vue-cli-service build"
},

添加后:

"scripts": {
"dev": "SET NODE_OPTIONS=--openssl-legacy-provider && vue-cli-service serve",
"build:prod": "SET NODE_OPTIONS=--openssl-legacy-provider && vue-cli-service build"
},

3.2 启动报错

Error creating bean with name 'captchaController': Unsatisfied dependency expressed through field 'configService';

原因因为没有启动Redis启动Redis即可。