首页 > 其他分享 >【项目技术介绍篇】如何在本地运行若依项目

【项目技术介绍篇】如何在本地运行若依项目

时间:2024-03-30 17:30:59浏览次数:25  
标签:项目 代码 jar RuoYi 若依 本地 Cloud

作者介绍:本人笔名姑苏老陈,从事JAVA开发工作十多年了,带过大学刚毕业的实习生,也带过技术团队。最近有个朋友的表弟,马上要大学毕业了,想从事JAVA开发工作,但不知道从何处入手。于是,产生了写一个博客专栏想法,介绍当前互联网企业JAVA项目开发如何快速入门。

本文收录于《30天企业JAVA项目开发实战入门》专栏,该专栏内容以当前互联网软件企业中的项目实战为线索,介绍企业JAVA项目开发中涉及到的开发流程、技术、工具、规范要求等等。帮助想从事JAVA开发的大学生或新人,更快的、更好的入门JAVA后端开发工作。

文章目录

一、前言

由于本专栏项目实战学习,是以若依开源项目RuoYi-Cloud为示例。所以,本文介绍如何在本地运行若依项目RuoYi-Cloud;

  • 若依项目RuoYi-Cloud简介

若依项目RuoYi-Cloud 是一个 Java EE 企业级的开源免费的快速开发平台,是一个基于Spring Boot、Spring Cloud & Alibaba的微服务的权限管理系统。如果想快速的开发一个Java EE 企业级项目,可以在若依项目的基础上,开发定制自己的项目。尤其是如果要开发一个后台管理系统,由于若依开源项目中已经内置完整的权限管理模块,所以能够更加快速的完成项目的开发工作;

  • 若依项目RuoYi-Cloud技术选型

采用前后端分离的模式,微服务版本前端基于 Vue/Element UI ;
后端采用Spring Boot、Spring Cloud & Alibaba微服务架构;
注册中心、配置中心选型Nacos,权限认证使用Redis;
流量控制框架选型Sentinel,分布式事务选型Seata;

  • 若依项目官方网站和文档地址
若依官网地址:https://www.ruoyi.vip/

若依演示地址:https://vue.ruoyi.vip/login

技术文档地址:https://doc.ruoyi.vip/ruoyi-cloud/

代码下载地址:https://gitee.com/y_project/RuoYi-Cloud

二、如何在本地运行若依项目

2.1 搭建若依项目开发环境

项目运行环境要求如下:(PS:关于如何搭建开发环境,见本专栏《30天企业JAVA项目开发实战入门》之【开发环境搭建篇】文章介绍)

JDK >= 1.8 (推荐1.8版本)
Mysql >= 5.7.0 (推荐5.7版本)
Redis >= 3.0
Maven >= 3.0
Node >= 12
Nacos >= 2.0.4 (ruoyi-cloud < 3.0 需要下载nacos >= 1.4.x版本)

2.2 下载若依项目代码

开发环境搭建完成后,我们去码云代码托管平台下载若依RuoYi-Cloud项目的代码。

PS:本专栏使用的代码版本为:RuoYi-Cloud v3.6.3,该版本下载地址为:https://gitee.com/y_project/RuoYi-Cloud/tree/v3.6.3;另外,关于如何从码云gitee下载项目代码,可以查看本栏文章介绍,链接地址:https://blog.csdn.net/u012171005/article/details/137052350

2.3 创建数据库,导入数据脚本

若依项目代码下载完成后,找到代码目录下面的SQL数据脚本;
在这里插入图片描述

之后,创建数据库ry-cloud并导入数据脚本ry_202xxxx.sql(必须),quartz.sql(可选);
在这里插入图片描述
在这里插入图片描述

之后,创建数据库ry-config并导入数据脚本ry_config_202xxxx.sql(必须);
在这里插入图片描述
在这里插入图片描述

之后,配置Nacos持久化,修改conf/application.properties文件,增加支持mysql数据源配置;
在这里插入图片描述
在这里插入图片描述

#*************** Config Module Related Configurations ***************#
### If use MySQL as datasource:
### Deprecated configuration property, it is recommended to use `spring.sql.init.platform` replaced.
spring.datasource.platform=mysql
spring.sql.init.platform=mysql

### Count of DB:
db.num=1

### Connect URL of DB:
db.url.0=jdbc:mysql://127.0.0.1:3306/ry-config?characterEncoding=utf8&connectTimeout=1000&socketTimeout=3000&autoReconnect=true&useUnicode=true&useSSL=false&serverTimezone=UTC
db.user.0=您的数据库用户名
db.password.0=您的数据库密码

之后,使用单机模式,启动nacos;
在这里插入图片描述
之后,打开nacos控制台界面(PS:nacos控制台地址,见nacos启动时界面输出的信息),检查和修改redis和mysql数据库的配置信息;
在这里插入图片描述
配置信息修改完成后,点击发布;
在这里插入图片描述

2.4 导入代码,运行项目

之后,打开IDEA开发工具,导入若依RuoYi-Cloud项目的代码;
在这里插入图片描述

代码导入后,分别配置JDK、配置Maven;
在这里插入图片描述
在这里插入图片描述

之后,IDEA会自动下载和导入项目中使用到的依赖jar包;依赖jar包导入完成后,使用Maven编译项目代码;
在这里插入图片描述

代码编译通过后,开始依次启动项目的后台服务模块(或者叫XX服务);
首先启动RuoYiSystemApplication 系统服务,
在这里插入图片描述
之后,启动RuoYiGatewayApplication 网关服务;
在这里插入图片描述

之后,启动RuoYiAuthApplication 认证服务;
在这里插入图片描述

系统服务启动成功,由于该服务配置了swagger,还可以打开swagger地址访问验证;
http://localhost:9201/swagger-ui/index.html
在这里插入图片描述

至此,后端项目运行完成。下面,开始运行前端项目。

首先,使用管理员方式,打开Windows命令行窗口;
在这里插入图片描述
之后,找到若依项目代码RuoYi-Cloud下面的ruoyi-ui目录;(PS:这是前端工程项目所在目录)
在这里插入图片描述

之后,进入到ruoyi-ui前端工程项目的目录下,执行npm install命令,安装依赖包;
在这里插入图片描述
依赖包安装完成后,执行npm run dev命令,启动项目。启动完成后,界面会输出前端工程的访问地址信息;
在这里插入图片描述

之后,打开地址:http://localhost/login,进入项目的登陆页面;
在这里插入图片描述
之后,输入账户信息(PS:账号 admin,密码 admin123),登录后,进入项目的主页面:
在这里插入图片描述

至此,若依项目RuoYi-Cloud在本地成功运行完成。

三、总结

以上,本文介绍了如何在本地运行若依项目RuoYi-Cloud。

期间遇到问题及解决方法,整理如下:

  • 问题一:IDEA打开若依项目RuoYi-Cloud代码,无法自动导入maven-compiler-plugin.jar包,出现错误;
    在这里插入图片描述

错误分析:IDEA在本地Maven仓库中找不到maven-compiler-plugin.jar包,所以出现该错误。我们需要在项目配置文件中,配置该jar包的版本号信息。

错误信息:Cannot resolve plugin org.apache.maven.plugins:maven-compiler-plugin:<unknown>

若Maven本地仓库中已经有一个maven-compiler-plugin.jar包;则把该jar包的版本号信息,填写在项目的配置文件中,这样,也不用重新导入了。
在这里插入图片描述

若Maven本地仓库中找不到maven-compiler-plugin.jar包,则可以去远程仓库,去查找包的版本号信息,找一个已经发布的jar包版本信息,填写即可。

地址:https://mvnrepository.com/artifact/org.apache.maven.plugins/maven-compiler-plugin

在这里插入图片描述

配置maven-compiler-plugin.jar包版本号信息后,配置文件的内容如图所示:

在这里插入图片描述

  • 问题二:若依项目前端工程,Windows命令行窗口,执行npm install命令,安装依赖报错;
    在这里插入图片描述

错误分析:出现该错误,是由于当前用户没有足够的权限去读取或写入指定的文件。所以,我们需要检查一下当前用户的权限是否足够。之后,切换使用管理员方式打开Windows命令行窗口,可以正常执行npm install命令;

错误信息:
npm ERR! errno -4048
npm ERR! Error: EPERM: operation not permitted, open 'C:\Program Files\nodejs\node_cache\_cacache\index-v5\52\9e\7408e5357e89363d49326da3334d9b9b6c2321c7bae86129aecfbe4f5372'

在这里插入图片描述
在这里插入图片描述

如果您对文章中内容有疑问,欢迎在评论区进行留言,我会尽量抽时间给您回复。如果文章对您有帮助,欢迎点赞、收藏。您的点赞,是对我最大的支持和鼓励,谢谢 :-)

标签:项目,代码,jar,RuoYi,若依,本地,Cloud
From: https://blog.csdn.net/u012171005/article/details/137082123

相关文章

  • 记打包的2个错误-项目BotBattle
    目录记打包项目的2个错误0.概述1.spring-boot-maven-plugin版本1.1问题1.2添加版本号2.总项目2.1问题2.2核验主类2.3backendcloud修改标签记打包项目的2个错误0.概述主目录backendcloud下有3个项目backend、botrunningsystem、matchingsystem│├─backend│......
  • 渗透项目1-GoldenEye
    靶机地址:https://www.vulnhub.com/entry/goldeneye-1,240/靶机难度:中等(CTF)目标:得到root权限&找到flag.txt信息收集收集目标iparp-scan-l(收集本地网络中的活跃主机的IP地址和MAC地址。)kaliarp-scan网络扫描工具扫描局域网ip地址-阿里云开发者社区(aliyun.com)......
  • 通过Vite创建Vue3项目
    目录一、下载安装node.js18版本及以上,通过node-v来查看node版本二、换淘宝镜像2.1更换镜像2.2查看镜像是否安装成功:npmconfiggetregistry三、全局安装vite: npminstall-gvite@latest 四、创建项目五、查看是否成功一、下载安装node.js18版本及以上,通过......
  • 程序汪8万接的共享电动车项目,开发周期3个月
    本文章来自程序汪背后的私活小团队,开发共享电动车的小程序,希望把这些真实案例分享出来,大家能学到点东西,比如硬件怎么通过手机蓝牙操控,商业项目怎么推广,软件怎么和硬件配合,电动车技术方案是什么样的等等。B站【我是程序汪】共享电动车项目开发项目情况前端vue小程序......
  • 程序汪8万接的线上娃娃机项目,开发周期40天
    本文章来自程序汪背后的私活小团队,线上娃娃机的项目,希望把这些真实案例分享出来,大家能学到点东西,比如硬件怎么通过手机APP操控,软件怎么和硬件配合,在线娃娃机方案是什么样的等等。B站【我是程序汪】 (变秃了也变强了)程序汪8万接的线上娃娃机项目,开发周期40天今年行情......
  • Git 删除分支——如何删除本地或远程分支
    Git删除分支——如何删除本地或远程分支Git是一种流行的版本控制系统,也是Web开发人员工具包中必不可少的工具。分支是使用Git的一个强大且不可或缺的部分。在本文中,您将学习有关如何在Git中删除本地和远程分支的基础知识。Git中的分支是什么?分支是指向提交的指针。......
  • 大型项目管理神器:掌握yarn monorepo的安装和使用
    I.引言在当今的前端开发中,由于项目规模的不断增长和多团队协同,Monorepo成为了越来越流行的开发模式。Monorepo指的是将多个相关项目或者模块打包在一起的软件开发模式,它可以让开发人员更好地组织管理代码,减少重复的代码,提高可复用性和开发效率。在前端开发中,使用yarnmonorep......
  • Unity制作本地离线数字人功能模块记录
    耗时半个月实现数字人各个功能模块记录一下个人感觉比较好的功能模块:1、TTS,语音合成,GPT-SoVITS,可本地部署使用cuda/gpu/cpu运算,https://www.yuque.com/baicaigongchang1145haoyuangong/ib3g1e2、ASR,语音识别,FunASR,阿里开源模型,可本地部署当前为cpu运算版本,中文识别王......
  • 软件项目管理(开发/实施/运维/安全/交付)全套文档模板
      前言:在软件项目管理中,每个阶段都有其特定的目标和活动,确保项目的顺利进行和最终的成功交付。以下是软件项目管理各个阶段的详细资料:软件项目全套文档资料下载:点我获取1.需求阶段目标:收集、分析和定义用户需求和业务目标。主要活动:需求调研:与用户沟通,了解他们的需求......
  • toLocaleString 将字符串、日期、数字、数组等对象的本地化
    toLocaleString() 是JavaScript中许多对象(包括 Number、Date 和数组)的一个方法。这个方法返回一个字符串,该字符串表示该对象的本地化版本。这通常意味着它会考虑运行代码的环境的语言和地区设置,来生成一个更易读或更符合当地习惯的字符串表示。对于 Number:当对 Number ......