ruoyi-vue部署

news2025/3/16 21:42:11

ruoyi源码类型

Ruoyi源码

        编译打包后,直接部署tomcat服务器

Ruoyi-vue 前后端分离版

        前端部署到nginx

        后端部署到tomcat

RuoYi-Cloud 微服务版

RuoYi-app 移动端版

RuoYi-vue 前后端分离版

环境

JDK>=1.8 

MySQL >= 5.7

Maven >= 3.0

Node >= 12

Redis >= 3

  (注:上述所有配置只能大于等于所需版本,不能低于需求版)

Windows开发环境

jdk安装

1.安装jdk

2.环境变量配置

变量:java_home(不区分大小写)

  • 目的:eclipse,tomcat等需要此变量得知jdk的位置

值:jdk的位置 (参考下方图片)

path

  • 目的:在dos下,任何位置都可执行path中的命令

Maven介绍

传统项目的弊端

        jar包不统一,jar包不兼容导致项目问题

        工程升级维护过程操作繁琐

Maven是什么

Maven作为一个构建工具,不仅能帮我们自动化构建,还能够抽象构建过程,提供构建任务实现;它跨平台,对外提供了一致的操作接口,这一切足以使它成为优秀的、流行的构建工具。

 Maven不仅是构建工具,还是一个依赖管理工具和项目管理工具,它提供了中央仓库,能帮我自动下载构件。

Maven的本质是一个项目管理工具,将项目开发和管理过程抽象成一个项目对象模型POM(Project Object Model:项目对象模型)

Maven是由java语言开发,它管理的东西以面向对象的形式设计,将一个项目看成一个对象,这个对象就叫做POM.

maven的安装和配置

安装

下载解压

首先需要确认的是你已经成功安装JDK,接着去maven官网下载安装包即可。下载地址:Download Apache Maven – Maven

然后选择自己想要的版本即可。下载完毕后解压到你想要解压的目录即可

配置环境变量

配置环境变量 MAVEN_HOME和path即可

输入mvn -v 或mvn -version如显示如下信息即可安装配置成功

maven目录结构

bin目录: 该目录包含了mvn运行的脚本,这些脚本用来配置java命令,准备好classpath和相关的Java系统属性,然后执行Java命令。

boot目录: 该目录只包含一个文件,该文件为plexus-classworlds-2.5.2.jar。plexus-classworlds是一个类加载器框架,相对于默认的java类加载器,它提供了更加丰富的语法以方便配置,Maven使用该框架加载自己的类库。

conf目录: 该目录包含了一个非常重要的文件settings.xml。直接修改该文件,就能在机器上全局地定制Maven的行为。

lib目录: 该目录包含了所有Maven运行时需要的Java类库,Maven本身是分模块开发的,因此用户能看到诸如maven-core-xxx.jar、maven-model-xxx.jar之类的文件,此外这里还包含一些Maven用到的第三方依赖如commons-cli-xxx.jar、commons-lang-xxx.jar等等。

Maven配置

设置阿里云中央仓库

因为Maven的镜像默认是国外的网站,我们下载jar包时就会非常慢,所以我们配置一个国内的阿里云镜像。

打开解压Maven的conf目录下的settings.xml文件,在<mirrors></mirrors>中添加如下mirror:

maven内置一个central仓库,在安装包中的父pom文件中。

mirrorOf配置的中央仓库与和父pom的central仓库关联。

中央仓库只能有一个,如果配置多个,只有第一个有效;

maven仓库优先级:本地仓库(localRepositories) > profile中的repositories仓库 > POM > mirrors全局仓库

配置JDK编译版本

配置JDK编译版本,防止在编辑器中运行时出现Java版本编译警告:

配置本地仓库目录

<localRepository>C:/maven/repository</localRepository>

maven

Maven POM

POM( Project Object Model,项目对象模型 ) 是 Maven 工程的基本工作单元,是一个XML文件,包含了项目的基本信息,用于描述项目如何构建,声明项目依赖,等等。

执行任务或目标时,Maven 会在当前目录中查找 POM。它读取 POM,获取所需的配置信息,然后执行目标。

POM 中可以指定以下配置:

  • 项目依赖

  • 插件

  • 执行目标

  • 项目构建 profile

  • 项目版本

  • 项目开发者列表

  • 相关邮件列表信息

父(Super)POM

父(Super)POM是 Maven 默认的 POM。所有的 POM 都继承自一个父 POM(无论是否显式定义了这个父 POM)。父 POM 包含了一些可以被继承的默认设置。因此,当 Maven 发现需要下载 POM 中的 依赖时,它会到 Super POM 中配置的默认仓库 http://repo1.maven.org/maven2 去下载。

Maven 使用 effective pom(Super pom 加上工程自己的配置)来执行相关的目标,它帮助开发者在 pom.xml 中做尽可能少的配置,当然这些配置可以被重写。

使用以下命令来查看 Super POM 默认配置:

mvn help:effective-pom

Maven仓库

Maven 在某个统一的位置存储所有项目的构件,这个统一的位置,我们就称之为仓库。换言之,仓库就是存放依赖和插件的地方。

maven依赖的查找顺序:本地仓库 -> 私服 -> 中央仓库

关于仓库分为:本地仓库,私服,中央仓库;其中私服和中央仓库都属于远程仓库。

中央仓库:maven团队自身维护的仓库,属于开源的;

私服:各公司/部门等小范围内存储资源的仓库,私服也可以从中央仓库获取资源;

本地仓库:开发者自己电脑上存储资源的仓库,也可从远程仓库获取资源;

私服的作用:

  • 保存具有版权的资源,包含购买或自主研发的jar

  • 一定范围内共享资源,能做到仅对内不对外开放

Maven坐标

在 Maven 中,任何一个依赖、插件或者项目构建的输出,都可以称为构件。在 Maven 世界中存在着数十万甚至数百万构件,在引入坐标概念之前,当用户需要使用某个构件时,只能去对应的网站寻找,但各个网站的风格迥异,这使得用户将大量的时间浪费在搜索和寻找上,严重地影响了研发效率。为了解决这个问题,于是Maven引入了Maven 坐标的概念。

Maven 坐标一套规则,它规定:世界上任何一个构件都可以使用 Maven 坐标并作为其唯一标识,Maven 坐标包括 groupId、artifactId、version、packaging 等元素,只要用户提供了正确的坐标元素,Maven 就能找到对应的构件。

任何一个构件都必须明确定义自己的坐标,这是 Maven的强制要求,任何构件都不能例外。我们在开发 Maven项目时,也需要为其定义合适的坐标,只有定义了坐标,其他项目才能引用该项

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2316266.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

LLM论文笔记 23: Meta Reasoning for Large Language Models

Arxiv日期&#xff1a;2024.6.17机构&#xff1a;THU / MSRA 关键词 meta-reasoning推理方法prompt engineering 核心结论 1. 提出Meta Reasoning prompting&#xff0c;MRP是一种系统提示方法&#xff0c;能够帮助LLM动态选择最合适的推理方法&#xff0c;从而提升其灵活性和…

【最后203篇系列】015 几种消息队列的思考

背景 队列还是非常重要的中间件&#xff0c;可以帮助我们&#xff1a;提高处理效率、完成更复杂的处理流程 最初&#xff0c;我觉得只要掌握一种消息队列就够了&#xff0c;现在想想挺好笑的。 过去的探索 因为我用python&#xff0c;而rabbitmq比较贴合快速和复杂的数据处…

学习springboot 的自动配置原理

前言 为什么要学习springboot 的自动配置原理&#xff1f; 1学习 自定义成starter 的前提 实际开发中&#xff0c;我们如果定义公共的组件给团队使用&#xff0c;为了让他们使用方便就自定义成starter。而想要学习starter ,就要先了解springboot 的自动配置原理 2 面试需要 了…

排错 -- FISCO BCOS区块链网络 -- 3. 编译智能合约

文章为FISCO BCOS2.0搭建区块链平台中发现的问题与总结&#xff0c;出错原因不唯一 &#xff0c;解决办法不唯一 目前社区缺少完整&#xff0c;稳定的搭建平台和教程 &#xff0c;欢迎各位及时补充&#xff0c;如有错误请及时评论纠正&#xff01; 感谢各位搜索到这里&#…

ffmpeg 添加毫秒时间戳

网上有好多添加时间水印的&#xff0c;默认是到秒&#xff0c;而我需要到毫秒&#xff0c;查了一下&#xff0c;没有找到更好的方案&#xff0c;下面是自己实现的方案&#xff0c;可以显示到毫秒。如果有更好的方案&#xff0c;欢迎讨论 ffmpeg -i video.mp4 -vf "drawte…

centos7上安装Docker

文章目录 **1. 使用华为云镜像源替换Docker仓库****2. 安装Docker CE****3.更换docker镜像源-使用华为云的docker镜像源****4.补充&#xff1a;docker的使用****5.补充&#xff1a;删除docker的步骤** 1. 使用华为云镜像源替换Docker仓库 步骤&#xff1a; 删除无效的Docker仓…

【Linux内核系列】:文件系统收尾以及软硬链接详解

&#x1f525; 本文专栏&#xff1a;Linux &#x1f338;作者主页&#xff1a;努力努力再努力wz &#x1f4aa; 今日博客励志语录&#xff1a; 世界上只有一种个人英雄主义&#xff0c;那么就是面对生活的种种失败却依然热爱着生活 内容回顾 那么在之前的学习中&#xff0c;我们…

视频理解之Actionclip(论文宏观解读)

配合解读代码解读 1.研究背景 1. 视频行为识别的重要性 视频行为识别是视频理解领域的核心任务之一&#xff0c;旨在通过分析视频内容来识别和分类其中的人物行为或活动。这一任务在多个领域具有重要的应用价值&#xff0c;例如智能监控、人机交互、自动驾驶、医疗健康等。随…

navicat16 升级到 navicat17 之后原来的连接找不到了 mac用户

版本16的路径 注意把对应的路径改成自己的用户名 /Users/自己的用户名/Library/Application Support/PremiumSoft CyberTech/Navicat CC/Common/Settings 版本17的路径 /Users/自己的用户名/Library/Containers/com.navicat.NavicatPremium/Data/Library/Application Suppor…

Altium Designer——CHIP类元器件PCB封装绘制

文章目录 PCB封装组成元素&#xff1a;焊盘的属性 SS34肖特基二极管SMA(DO-214AC)封装绘制资料&#xff1a;步骤&#xff1a;1.绘制焊盘&#xff1a;用到的快捷键&#xff1a;资料&#xff1a; 2.绘制丝印&#xff1a;用到的快捷键&#xff1a;资料&#xff1a; PCB封装组成元素…

【一起来学kubernetes】12、k8s中的Endpoint详解

一、Endpoint的定义与作用二、Endpoint的创建与管理三、Endpoint的查看与组成四、EndpointSlice五、Endpoint的使用场景六、Endpoint与Service的关系1、定义与功能2、创建与管理3、关系与交互4、使用场景与特点 七、Endpoint的kubectl命令1. 查看Endpoint2. 创建Endpoint3. 编辑…

《AI浪潮中的璀璨新星:Meta Llama、Ollama与DeepSeek的深度剖析》:此文为AI自动生成

《AI浪潮中的璀璨新星&#xff1a;Meta Llama、Ollama与DeepSeek的深度剖析》&#xff1a;此文为AI自动生成 引言&#xff1a;AI 大模型的群雄逐鹿时代 在科技飞速发展的当下&#xff0c;AI 大模型领域已成为全球瞩目的焦点&#xff0c;竞争激烈程度堪称白热化。从 OpenAI 推出…

LVGL移植到6818开发板

一、移植步骤 1.lv_config.h 配置文件启动 framebuffer 2、lv_config.h 配置文件关闭SDL 2.修改main.c 去掉SDL输入设备 3.修改Makefile 文件启动交叉编译 去掉警告参数 去掉SDL库 4.交叉编译代码 make clean #清空 ⭐ 必须要清空一次再编译&#xff01; 因为修改了 lv_con…

UE4-UE5虚幻引擎,前置学习一--Console日志输出经常崩溃,有什么好的解决办法

有些差异 这么牛逼的引擎&#xff0c;居然有这种入门级别的问题&#xff0c;一触发清理&#xff0c;大概率(80%)会崩溃 无论虚幻5还是UE4都有这个问题&#xff0c;挺烦人的 实在忍不了了&#xff0c;这次&#xff0c;今天 就想问问有什么好的处理方法么&#xff1f;&#x…

(全)2024下半年真题 系统架构设计师 综合知识 答案解析01

系统架构设计师第二版教程VIP课程https://edu.csdn.net/course/detail/40283 操作系统 下列选项中不能作为预防死锁措施的是 。 A. 破坏“循环等待"条件 B. 破坏“不可抢占”条件 C. 破坏“互斥”条件 D. 破坏“请求和保持”条件 答案&#xff1a;C 解析&…

Linux系统之less命令的基本使用

Linux系统之less命令的基本使用 一、less命令介绍二、less命令的使用帮助2.1 less命令的帮助信息2.2 less命令主要选项解释 三、less命令的基本使用3.1 查看文件内容3.2 结合管道使用 四、注意事项 一、less命令介绍 在Linux和Unix类操作系统中&#xff0c;文件浏览是一项常见的…

【微知】plantuml在泳道图中如何将多个泳道框起来分组并且设置颜色?(box “浏览器“ #LightGreen endbox)

泳道分组并且着色 分组用 box和endbox &#xff0c;颜色用#xxx&#xff0c;标注用"xxx" box "浏览器" #LightGreen participant "浏览器1" as Browser participant "浏览器2" as Browser2 endboxparticipant "服务端" as …

C#生产型企业ERP系统管理软件PCB行业ERP进销存MRP管理系统BOM管理

背景 本软件为为苏州某生产型电子科技企业开发的ERP管理软件。 功能说明 希哲管理系统v1.0是一款在流览器上使用的企业管理软件&#xff0c;使用上与客户端版的优势是&#xff1a; 1.安装更新部署方便&#xff0c;只需服务器部署了软件&#xff0c;其它客户端的用户无需安装&am…

文件系统 linux ─── 第19课

前面博客讲解的是内存级文件管理,接下来介绍磁盘级文件管理 文件系统分为两部分 内存级文件系统 : OS加载进程 ,进程打开文件, OS为文件创建struct file 和文件描述符表 ,将进程与打开的文件相连, struct file 内还函数有指针表, 屏蔽了底层操作的差异,struct file中还有内核级…

射频前端模块(FEM)的基本原理与架构:从组成到WiFi路由器的应用

射频前端模块(FEM)的基本原理与架构:从组成到WiFi路由器的应用 一、FEM是什么? 射频前端模块(Front-End Module, FEM)是无线通信系统中负责处理射频信号的核心组件。它将多个关键电路集成在一个模块中,包括功率放大器(PA)、低噪声放大器(LNA)、射频开关(Switch)、…