小诺2.0开源版工程启动

news/2024/7/10 22:10:22 标签: 开源

小诺是一款开源的前后端开发框架,同若依、SpringBladex一样可作为私活、外包脚手架。

开源地址:Snowy: 最新:💖国内首个国密前后分离快速开发平台💖,采用Vue3+AntDesignVue3 + Vite+SpringBoot+Mp+HuTool+SaToken。集成国密加解密插件,在前后分离框架中,实现前后分离“密”不可分;同时实现国产化机型、中间件、数据库适配,是您的不二之选;最后官网提供工作流、多租户、多数据源、Vue3表单设计器等丰富插件灵活使用。

官网文档介绍关于启动的内容较少,视频教程也是边熟悉便教学,会有后面推翻前面结论的情况。。。。

简单介绍一下启动

在IDE里启动工程建议电脑最低内存配置16G,不在IDE里启动工程建议电脑最低内存配置8G

一、前后端使用版本

后端JDK8
前端node16.x 不要用18 20的lts版,坑太多
建议使用以下命令锁定版本,防止遗忘。
node -v >.nvmrc
文件转为utf8 无bom编码,便于其他工具打包识别版本使用。阿里云云效就对这个要求严格
 

二、各工程作用和端口

后端可启动工程
SnowyActuatorApp boot-admin监控用的
SnowyBizApp 业务都写在这
SnowyNacosApp nacos注册中心+配置中心(现在用的2.1.2GA的源码)
SnowyGatewayApp 路径转发映射到服务用的
SnowySentinelApp 熔断限流降级用的
SnowyWebApp 主工程APP
SnowyXxlJobApp 定时任务用的

各工程默认端口
前端 9000
SnowyActuatorApp 9001
SnowyBizApp 9102
SnowyNacosApp 8848
SnowyGatewayApp 9003
SnowySentinelApp 9002
SnowyWebApp 9101
SnowyXxlJobApp 9004
 

项目里 snowy-admin-web 是前端文件夹,其他的都是后端文件。

三、启动工程前的初始化

1.nacos初始化

新建nacos数据库 名为snowy-nacos-app
导入nacos数据库脚本 snowy-server/snowy-nacos-app/src/main/resources/META-INF/nacos-db.sql

导入命名空间和命名空间配置文件
sql导入 snowy-server/snowy-nacos-app/src/main/resources/META-INF/update/nacos-db-update-20230611.sql

修改snowy-server/snowy-nacos-app/src/main/resources/application.properties
改数据库密码后可启动SnowyNacosApp

2.系统数据库初始化

新建数据库 snowy-cloud
导入sql snowy-modules/snowy-web-app/src/main/resources/_sql/snowy_cloud_mysql.sql

修改nacos里snowy-cloud-2x-dev命名空间里的各工程的数据库账号密码。

3.redis初始化

安装启动redis即可。

四、打包后端工程为jar包

以下是mvn打包命令,可用于jenkins

xxl-job工程
mvn package -pl snowy-server/snowy-xxl-job-app -am -Dmaven.test.skip=true
生成jar路径 ./snowy-server/snowy-xxl-job-app/target/snowy-xxl-job-app.jar

sentinel工程
mvn package -pl snowy-server/snowy-sentinel-app -am -Dmaven.test.skip=true
生成jar路径 ./snowy-server/snowy-sentinel-app/target/sentinel-dashboard.jar

actuator工程
mvn package -pl snowy-server/snowy-actuator-app -am -Dmaven.test.skip=true
生成jar路径 ./snowy-server/snowy-actuator-app/target/snowy-actuator-app.jar

nacos工程
mvn package -pl snowy-server/snowy-nacos-app -am -Dmaven.test.skip=true
生成jar路径 ./snowy-server/snowy-nacos-app/target/snowy-nacos-app.jar

web工程
mvn package -pl snowy-modules/snowy-web-app -am -Dmaven.test.skip=true
生成jar路径 ./snowy-modules/snowy-web-app/target/snowy-web-app.jar

biz工程
mvn package -pl snowy-modules/snowy-biz-app -am -Dmaven.test.skip=true
生成jar路径 ./snowy-modules/snowy-biz-app/target//snowy-biz-app.jar

五、打包前端工程为dist目录

打包命令

npm install
npm run build
生成前端文件路径 ./dist/

六、常见报错处理

1.yaml报错org.yaml.snakeyaml.error.YAMLException: java.nio.charset.MalformedInputException: Input length = 1

解决方法

java -jar xxx.jar
改成
java -Dfile.encoding=utf-8 -jar xxx.jar

2.数据库连接错误

nacos的配置文件需要修改jdbc连接配置,包括biz web xxl-job gateway

启动后的界面如图


http://www.niftyadmin.cn/n/5201574.html

相关文章

数字化转型导师坚鹏:数字化时代银行网点厅堂营销5大关键点分析

数字化时代银行网点厅堂营销需要抓住以下5大关键点: 1、精准识别客户:在数字化时代,银行网点厅堂营销的关键在于精准识别客户。通过利用大数据和人工智能技术,银行可以分析客户的行为和需求,从而更好地了解客户&#…

算法学习 day27

第二十七天 美化数组的最少删除数 2216. 美化数组的最少删除数 - 力扣&#xff08;LeetCode&#xff09; class Solution { public:int minDeletion(vector<int>& nums) {int len nums.size();if(len 0) return 0;int res 0,cur 0;for(int i 1;i < len;i)…

【Java】Groovy 语言应用场景以及积累

Groovy 是一种多用途的编程语言&#xff0c;它可以用于多种开发场景。以下是 Groovy 可以用于的一些开发领域和示例&#xff1a; 脚本编写&#xff1a; Groovy 的简洁语法和强大的动态特性使其成为编写脚本的理想选择。 def message "Hello, World!" println messag…

linux 系统调用流程分析

x86 1.系统调用 系统调用是用户空间程序与内核交互的主要机制。系统调用与普通函数调用不同&#xff0c;因为它调用的是内核里的代码。使用系统调用时&#xff0c;需要特殊指令以使处理器权限转换到内核态。另外&#xff0c;被调用的内核代码由系统调用号来标识&#xff0c;而…

基于白冠鸡算法优化概率神经网络PNN的分类预测 - 附代码

基于白冠鸡算法优化概率神经网络PNN的分类预测 - 附代码 文章目录 基于白冠鸡算法优化概率神经网络PNN的分类预测 - 附代码1.PNN网络概述2.变压器故障诊街系统相关背景2.1 模型建立 3.基于白冠鸡优化的PNN网络5.测试结果6.参考文献7.Matlab代码 摘要&#xff1a;针对PNN神经网络…

HTTP之常见问答

1&#xff1a;HTTP/1.1 如何优化&#xff1f; &#xff1a;尽量避免发送 HTTP 请求&#xff1b;通过缓存技术&#xff0c;使用请求的 Etag 参数来处理判断缓存过期等问题&#xff0c;类似304状态码就是告诉客户端&#xff0c;缓存有效还能继续使用 &#xff1a;在需要发送 HTTP…

软件测试最经典的十道面试题(答案+文档)

前言 &#xff08;第一个就刷掉一大批人&#xff09; 有很多“会自动化”的同学来咨询技术问题&#xff0c;他总会问到我一些元素定位的问题。元素定位其实都不算自动化面试的问题。 一般我都会问&#xff1a;你是定位不到吗&#xff1f;通常结果都是说确实定位不到。 做自…

OpenGL 绘制文本(QPainter)

文章目录 一、简介二、实现代码三、实现效果一、简介 OpenGL中并没有绘制文本的相关函数,因此这里仍然用的是Qt中的QPainter工具来绘制文本,但是其相关的定位这里仍然会用OpenGL中的坐标转换。这里对其也进行封装一下,方便后续使用。 二、实现代码 TextDrawable.h #ifndef T…