文档章节

Scratch3.0搭建

爱生活_爱JAVA
 爱生活_爱JAVA
发布于 04/16 09:24
字数 750
阅读 300
收藏 0

Scratch模块及本地部署说明

获取地址

gui

https://github.com/LLK/scratch-gui.git

vm

https://github.com/LLK/scratch-vm.git

Blocks

https://github.com/LLK/scratch-blocks.git

Renderer

https://github.com/LLK/scratch-renderer.git

l10n

https://github.com/LLK/scratch-l10n.git

模块说明

Gui

基于React的前端,页面化开发所需要主要修改的地方。二次开发与扩展模块功能无关时,可基于其他后台语言提供api支持。

Vm

管理状态并执行业务逻辑。它将状态发送到GUI。前端所需要使用的组件业务逻辑编写部分,如需要增加其他扩展组件或迁移其他扩展组件时请修改此模块。此模块基于nodejs开发。

l10n

多语音环境支持。要修改或删除语音支持时,修改此包,修改流程同scratch-vm

Blocks

处理编辑器中出现块的部分的用户界面和逻辑。与GUI进行对话,通常将事物传递给VM。二次开发时无需修改。

部署环境

前题条件

安装好git、nodejs、npm,建议nodejs版本为:10.15 或以下版本,npm版本为:6.8.0 或以上版本

获取并编译代码

  1. 本地磁盘目录新建scratch目录
  2. 进行scratch目录
  3. 执行如下代码

git clone https://github.com/LLK/scratch-gui.git

git clone https://github.com/LLK/scratch-vm.git

其他程序省略,需要修改那个就下载那个即可。

  1. 等待clone完成,会产生 scratch-gui 和 scratch-vm目录
  2. 进入scratch-gui 目录 执行npm start可直接启动原版程序

扩展说明

  1. 进入scratch-vm 目录或用编译器打开此项目
  2. scr->extensions 为相应的扩展程序,scr-> extension-support->extension-manager.js 对外爆露nodejs服务
  3. 增加或修改后执行如下命令

npm install

npm link

进入scratch-gui目录,增加相应的扩展 scr->lib->libraries->extensions->index.jsx文件

npm install

npm link scratch-vm

npm start

  1. 打开浏览器,输入 http://127.0.0.1:8601 即可打开

发布

  1. 进入scratch-gui 目录,执行npm run build
  2. 待命令执行完毕,会产生build目录,将此目录下的文件复到制应用服务器的目录中即可

注意事项

  1. 增加扩展时,需注意扩展中所引的node包在本地化是否支持,即package.json中增加相应的依赖关系。
  2. 请在webback.config.js中增加 fs、net、tls、bufferutil、dgram、wa、dns、net编译忽略项。否则npm start时将不能通过,scratch-vm 和 scratch-gui 中都需要修改。
  3. Node中所require的包,请确定本机已经npm install -g xxxx安装,否则无法编译通过,如 npm install -g browserify-fs browserify
  4. npm start 时候,会自动加载 vm包,如vm包有变动,可在vm中执行 npm install 、npm link 创建完链接后,在gui中执行 npm link scratch-vm ,在执行 npm start 即可,其他包修改的方式和这个方式相同,不在描述
  5. 如执行命令中遇到时错误,请按提示安装相应的包,npm install -g xxxx 即可

 

© 著作权归作者所有

爱生活_爱JAVA
粉丝 11
博文 9
码字总数 9258
作品 0
哈尔滨
项目经理
私信 提问
加载中

评论(1)

玛雅编程
可以看一下www.ssdlh123.cn这个网站,支持scratch二次开发,联系方式:qq 1778608519
【6.23源创会南京站】上天台之前先听一波人工智能技术分享

南京源创会圆满落幕,PPT下载查看文末链接,本次活动详情点击这里。 世界杯对于广大球迷来说,是四年一次的狂欢时刻。周末约上三五好友去酒吧熬夜看球,喝酒撸串,再一起相约天台,还有什么能...

新垣吉衣OSC
2018/06/25
1K
12
“魔程”社区训练营第一期活动--用实例教你快速学会Scratch和Python

“魔程”社区训练营是受浦东软件园职业技能培训中心委托组织的面向开发者的技术社区,希望给开发者提供更多的线下交流与分享机会,本次为第一期活动,主要从Scratch 少儿编程和Python 两个技...

卿鱼
05/21
0
0
Makeblock推出编程教学工具“慧编程”,融入AI和IoT助力老师打造高效课堂

“慧编程”基于青少年编程语言Scratch开发,提供一站式课堂管理平台,以帮助老师节省备课时间、降低编程教学难度。 4月26日,STEAM教育解决方案提供商Makeblock正式推出编程教学软件--慧编程...

行者武松
2018/05/15
0
0
【南京】OSC源创会第76期报名开始

本期图文回顾链接:https://www.oschina.net/question/3802184_2282141 热情似火的六月,OSC源创会将再次飞往同样热情的六朝古都--南京与大家见面,依然秉持着“自由,开放,分享”的思想,为...

小鱼丁
2018/05/11
181
44
【南京】OSC源创会第76期报名开始

本期图文回顾链接:https://www.oschina.net/question/3802184_2282141 热情似火的六月,OSC源创会将再次飞往同样热情的六朝古都--南京与大家见面,依然秉持着“自由,开放,分享”的思想,为...

小鱼丁
2018/05/11
0
0

没有更多内容

加载失败,请刷新页面

加载更多

nproc systemd on CentOS 7

Increasing nproc for processes launched by systemd on CentOS 7 Ask Question I have successfully increased the nofile and nproc value for the local users, but I couldn't find a p......

MtrS
今天
3
0
了解微信小程序下拉刷新功能

小程序提供了这个事件。 onPullDownRefresh() 监听用户下拉刷新事件。 如果要开启下拉刷新功能,要先到json配置: "enablePullDownRefresh":true 配置后下拉有反应了但是没有加载效果,在onP...

oixxan__
今天
2
0
springmvc java对象转json,上传下载(未完)拦截器Interceptor以及源码解析(未完待续)

package com.atguigu.my.controller;import java.util.Collection;import org.springframework.beans.factory.annotation.Autowired;import org.springframework.stereotype.Contr......

architect刘源源
今天
30
0
[日更-2019.5.24、25、26] Android系统中的Binder通信机制分析(一)--servicemanager

声明 其实对于Android系统Binder通信的机制早就有分析的想法,记得去年6、7月份Mr.Deng离职期间约定一起对其进行研究的,但因为我个人问题没能实施这个计划,留下些许遗憾... 最近,刚好在做...

Captain_小馬佩德罗
昨天
24
0
聊聊dubbo的DataStore

序 本文主要研究一下dubbo的DataStore DataStore dubbo-2.7.2/dubbo-common/src/main/java/org/apache/dubbo/common/store/DataStore.java @SPI("simple")public interface DataStore { ......

go4it
昨天
3
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部