小诺是一款开源的前后端开发框架,同若依、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.jarsentinel工程
mvn package -pl snowy-server/snowy-sentinel-app -am -Dmaven.test.skip=true
生成jar路径 ./snowy-server/snowy-sentinel-app/target/sentinel-dashboard.jaractuator工程
mvn package -pl snowy-server/snowy-actuator-app -am -Dmaven.test.skip=true
生成jar路径 ./snowy-server/snowy-actuator-app/target/snowy-actuator-app.jarnacos工程
mvn package -pl snowy-server/snowy-nacos-app -am -Dmaven.test.skip=true
生成jar路径 ./snowy-server/snowy-nacos-app/target/snowy-nacos-app.jarweb工程
mvn package -pl snowy-modules/snowy-web-app -am -Dmaven.test.skip=true
生成jar路径 ./snowy-modules/snowy-web-app/target/snowy-web-app.jarbiz工程
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
启动后的界面如图