github在线编程

github在线编程

文章目录

  • github在线编程
    • 两种区别
    • 演示项目 Ruoyi-Vue
    • GitHub Codespaces 演示
      • github 访问项目
      • 使用 GitHubCodeSpace 打开该项目
      • 查看运行环境
      • 安装运行环境
      • 初始化myql数据
      • 安装 redis
      • 运行前端
      • 运行后端
      • 前后端运行成功测试
      • 安装相关插件
    • GitPod 演示

说明:

目前总结 github 开箱即用的集成环境 , 有 2 种方式比较好用

  • GitPod
  • GitHub Codespaces

两种区别

参考网址:

https://devpress.csdn.net/cloudnative/62fb6d967e6682346618e9f0.html

演示项目 Ruoyi-Vue

项目 github 地址

https://github.com/yangzongzhuan/RuoYi-Vue

项目文档地址:

http://doc.ruoyi.vip/

运行环境

  • jdk1.8
  • maven
  • mysql
  • redis
  • node

GitHub Codespaces 演示

github 访问项目

image-20230520125506839

使用 GitHubCodeSpace 打开该项目

image-20230520125537595

初始化在线编程环境 , 如下图所示

image-20230520125828193

image-20230520131041846

查看运行环境

  • maven

  • node

  • jdk (jdk版本默认是17 , 切换到 jdk1.8)

  • mysql (初始化没有, 使用docker安装)

  • redis (初始化没有, 使用docker安装)

image-20230520131323335

安装运行环境

修改 jdk 版本为 jdk1.8

参考网址:

https://cloud.tencent.com/developer/article/1551638

使用 sdkman 管理 jdk 版本

  • 查看可以安装的 jdk 版本
sdk list java

image-20230520131704594

  • 安装 jdk1.8
sdk install java 8.0.352-amzn

image-20230520131912980

image-20230520131943493

image-20230520132057382

image-20230520132124480

到此 切换 jdk 1.8 成功

初始化myql数据

初始化 mysql 的数据

mysql 脚本 在 sql 目录下

image-20230520131200088

初始化两个脚本即可

使用 docker 安装 mysql

docker run --name some-mysql -e MYSQL_ROOT_PASSWORD=root -d mysql:5.7

测试运行 mysql

image-20230520133056745

导入sql 脚本

拷贝脚本 到 mysql 容器中 some-mysql

docker cp sql  some-mysql:/root/

容器内部查看 sql 脚本已经复制到 /root/sql 目录下

image-20230520134131832

创建数据库

说明:

修改数据库名称 ry-vue 改为 ry_vue , 在命令行的情况下 , 使用 ry-vue名称创建会报错 ;

image-20230520134335146

使用 source 命令导入对应数据

安装 redis

docker run -p 6379:6379 --name redis \
-v /mydata/redis/data:/data \
-d redis:5 redis-server --appendonly yes \
--requirepass "root" 

运行前端

安装依赖

# 进入前端目录
cd ruoyi-ui 
# 安装依赖
npm install --registry=https://registry.npmmirror.com 

image-20230520135201753

运行项目

npm run dev

安装失败 , 因为 node 版本太高 , 我们切换到 低版本的 node

使用 nvm 安装 node 12

# 列出 node 版本
nvm list
# 安装 node 12
nvm install 12.22.12

image-20230520140942902

安装完成

查看 node 和 npm 版本

node -v
npm -v

image-20230520141015025

重新安装依赖和运行项目

image-20230520141501449

运行成功

打开前端页面

image-20230520141539111

image-20230520141619388

运行后端

修改配置

logback.xml

image-20230520185752059

application.yml

修改 reids 连接信息

image-20230520185852492

application-druid.yml

修改 mysql 连接信息

image-20230520185948705

安装依赖

mvn clean package

运行项目

java -jar ruoyi-admin/target/ruoyi-admin.jar 

运行中…

image-20230520190211676

image-20230520190225189

后端运行成功

image-20230520190247312

前后端运行成功测试

后端

image-20230520190314474

前端

image-20230520190331000

访问

image-20230520190414535

登录界面

image-20230520190435378

登录成功

image-20230520190500716

安装相关插件

中途安装了一些插件

如下图所示

到此 Ruoyi-Vue 项目搭建安装完成

GitPod 演示

其余通 GitHubCodeSpace , 打开方式不一样

https:// 后面加上 gitpod.io#

image-20230520190830870

image-20230520190842669

image-20230520190900751

image-20230520190924526

其余步骤 GithubCodeSpaces

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

把玩数据在内存中的存储

前言:时光如梭💦,今天到了C语言进阶啦😎,基础知识我们已经有了初步认识, 是时候该拔高拔高自己了😼。 目标:掌握浮点数在内存的存储,整形在内存的存储。 鸡汤&#xff1a…

好玩!AI文字RPG游戏;播客进入全AI时代?LangChain项目实践手册;OpenAI联创科普GPT | ShowMeAI日报

👀日报&周刊合集 | 🎡生产力工具与行业应用大全 | 🧡 点赞关注评论拜托啦! 🤖 Microsoft Build 中国黑客松挑战赛,进入AI新纪元 近期,伴随着人工智能的新一轮浪潮,Hackathon (黑…

【网络协议详解】——OSPF协议(学习笔记)

目录 🕒 1. 概述🕒 2. 相关概念🕘 2.1 基本思想🕘 2.2 区域及路由🕘 2.3 链路状态数据库🕤 2.3.1 点到点网络🕤 2.3.2 点到多点网络🕤 2.3.3 广播网络与非广播多址接入网络&#x1f…

反射枚举

1、定义 java的反射机制是在运行状态中,对于任意一个类,都能直到这个类的所有属性和方法;对于任意一个对象,都能够调用他的任意方法和属性,既然能够拿到那么,我们就可以修改部分类型信息;这种动…

软考A计划-电子商务设计师-计算机系统基础知识

点击跳转专栏>Unity3D特效百例点击跳转专栏>案例项目实战源码点击跳转专栏>游戏脚本-辅助自动化点击跳转专栏>Android控件全解手册点击跳转专栏>Scratch编程案例 👉关于作者 专注于Android/Unity和各种游戏开发技巧,以及各种资源分享&am…

Delphi11的多线程ⓞ,附送图片处理代码

Delphi11的多线程ⓞ OLD Coder , 习惯使用Pascal 接下来准备启用多线程,毕竟硬件多核,Timer不太爽了(曾经的桌面,都是Timer——理解为“片”) 突然想写写,不知道还有多少D兄弟们在。 从源码开始 用D11之…

mybatisplus递归传递多个参数 | mybatisplus传递多个参数获取层级数据 | mybatisplus传递多个参数获取树形数据

搜索关键字: mybatisplus关联查询传递参数|"select""树形结构"|"select""树形结构""传参"| "select""many""传参"| "select""column""传参" 1、…

内置工具横向移动

IPCSchtasks IPC: IPC$是共享"命令管道"的资源,它是为了让进程通信而开放的命名管道,连接双方可以建立安全的通道并以此通道进行加密数据交换,从而实现对远程计算机的访问。 利用条件: 1、开放139、445 2、目标开启…

SAP-MM-采购申请审批那些事!

1、ME55不能审批删除行项目的PR 采购申请审批可以设置行项目审批或抬头审批。如果设置为抬头审批时,ME55集中审批时,就会发现有些采购申请时不能审批的, 那么这些采购申请时真的不需要审批么?不是的,经过核对这些采购申…

【每周一书】--(认知觉醒)思考:如何用清爽的情绪面对内卷的当下?

【每周一书】--(认知觉醒)思考:如何用清爽的情绪面对内卷的当下? 认知觉醒:开启自我改变的原动力焦虑:焦虑的根源完成焦虑定位焦虑选择焦虑环境焦虑难度焦虑 如何拥有清爽的情绪,释放焦虑情绪 认…

STM32F407单片机HAL库CAN2不能接收数据解决方法

最近在使用stm32F407的片子调试can通信,直接在正点原子的代码上修改调试,调试can1的时候,基本没啥问题,收发都正常,使用查询模式和中断模式都可以。但是当修改到can2的时候,可以正常发送数据,但…

WPF 热重载失效了

关于 热重载官方说明: WPF 和 UWP 应用的 XAML 热重载是什么Introducing the .NET Hot Reload experience for editing code at runtime 热重载简单来说,就是点击运行程序后,修改 XAML 代码,应用程序会实时的显示你的修改 为…

Python入门(十三)函数(一)

函数(一) 1.函数概述2.函数定义2.1向函数传递信息2.2实参和形参 作者:xiou 1.函数概述 函数是带名字的代码块,用于完成具体的工作。要执行函数定义的特定任务,可调用该函数。需要在程序中多次执行同一项任务时&#…

中间件SOME/IP简述

SOME/IP SOME/IP 不是广义上的中间件,严格的来讲它是一种通信协议,但中间件这个概念太模糊了,所以我们也一般称 SOME/IP 为通信中间件。 SOME/IP 全称是 Scalable service-Oriented MiddlewarE over IP。也就是基于 IP 协议的面向服务的可扩…

使用Python绘制M2货币供应率曲线

M2广义货币供应量:流通于银行体系之外的现金加上企业存款、居民储蓄存款以及其他存款,它包括了一切可能成为现实购买力的货币形式,通常反映的是社会总需求变化和未来通胀的压力状态。近年来,很多国家都把M2作为货币供应量的调控目…

ChatGPT国内免费使用方法【国内免费使用地址】

当下人工智能技术的快速发展,聊天机器人成为了越来越多人们日常生活和工作中的必备工具。如何在国内免费使用ChatGPT聊天机器人,成为了热门话题。本文将为你详细介绍ChatGPT国内免费使用方法,让你轻松拥有聊天机器人助手,提高工作…

Vue3 小兔鲜:Pinia入门

Vue3 小兔鲜:Pinia入门 Date: May 11, 2023 Sum: Pinia概念、实现counter、getters、异步action、storeToRefs保持响应式解构 什么是Pinia Pinia 是 Vue 的专属状态管理库,可以实现跨组件或页面共享状态,是 vuex 状态管理工具的替代品&…

论文学习笔记:Swin Transformer: Hierarchical Vision Transformer using Shifted Windows

论文阅读:Swin Transformer: Hierarchical Vision Transformer using Shifted Windows 今天学习的论文是 ICCV 2021 的 best paper,Swin Transformer,可以说是 transformer 在 CV 领域的一篇里程碑式的工作。文章的标题是一种基于移动窗口的…

C++异步调用方法

C之future和promise future和promise的作用是在不同线程之间传递数据。使用指针也可以完成数据的传递,但是指针非常危险,因为互斥量不能阻止指针的访问;而且指针的方式传递的数据是固定的,如果更改数据类型,那么还需要…

代码随想录算法训练营第四十六天|139.单词拆分、关于多重背包,你该了解这些!、背包问题总结篇!

文章目录 一、139.单词拆分二、关于多重背包&#xff0c;你该了解这些&#xff01;三、背包问题总结篇&#xff01;总结 一、139.单词拆分 public boolean wordBreak(String s, List<String> wordDict) {//完全背包问题&#xff0c;因为可以重复&#xff0c;背包正序排列…