Scratch3 二次开发(2)

💢Scratch 这两天快把我搞吐了。

Anyways, 怎么说都还是要更新的嘛。今天主要是讲一讲如何在 Windows 下对 scratch-blocks 进行编译,然后让这仨库连接起来一起搞事情😜 。整体方案就是安装 WSL ,里面装上 nodejs, python2java 。把 blocks/build.py 的脚本改成直接本地编译(依赖的 google-closure-compiler 里面有个 compiler.jar 文件,就是编译 closure 用的)

本文步骤比较多,跟上!

进入控制面板,点 启用或关闭 Windows 功能

开启 wsl 功能.png

进去直接滑到底,打勾 适用于 Linux 的 Windows 子系统
开启 wsl 功能.png

确定 后重启电脑

开机后打开 git bash

cd /d/public # 我的工作文件夹
 mkdir Linux # 创建一个文件夹,用来储存所有 WSL 的文件

下载 WSL Ubuntu 压缩包,下载到 Linux 文件夹。

同时在这里下载 zip ,把LxRunOffline.exe 解压到 Linux文件夹。

LxRunOffline on Github

接着继续 git bash

# /d/public/Linux
 # -n 名字 -d 安装文件夹 -f 下载的压缩包
 winpty ./LxRunOffline.exe install -n Ubuntu -d /d/public/Linux/Ubuntu -f 16.04.2-server-cloudimg-amd64-root.tar.gz
 # 运行结束后
 winpty ./LxRunOffline.exe run -n Ubuntu # 或者 winpty wsl
成功进入 wsl

输入 exit 退出
git bash

vi ~/.bashrc
 #按 i 把下面内容加入:
 ​
 alias lx='winpty /d/public/Linux/LxRunOffline.exe' # 
 alais ubuntu=lx' run -n Ubuntu' # 启动命令
 alias r-ubuntu=lx' ui -n Ubuntu' # 卸载命令
 alias i-ubuntu=lx' install -n Ubuntu -d /d/public/Linux/Ubuntu -f 16.04.2-server-cloudimg-amd64-root.tar.gz' # 重装命令
 ​
 # 按 ESC 输 :wq! 保存退出
 source ~/.bashrc</pre>

这时你再输入 ubuntu 就可以直接进入了!

现在我们对 apt 换源。

 ubuntu # 进入了 ubuntu
 ​
 cd /etc/apt # apt 源的文件夹
 mv sources.list sources.list_backup # 备份,保险。万一国内源不可用可以还回去
 vi sources.list # 进入 vim 把下面内容粘贴进去。注意这是 Ubuntu 不是 git bash 的 vim
 ​
 # 默认注释了源码镜像以提高 apt update 速度,如有需要可自行取消注释
 deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ xenial main restricted universe multiverse
 # deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ xenial main restricted universe multiverse
 deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ xenial-updates main restricted universe multiverse
 # deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ xenial-updates main restricted universe multiverse
 deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ xenial-backports main restricted universe multiverse
 # deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ xenial-backports main restricted universe multiverse
 deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ xenial-security main restricted universe multiverse
 # deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ xenial-security main restricted universe multiverse
 ​
 # 现在 按 ESC 输 :wq! 保存退出
 apt-get update
 # 执行正常,你就成功换源了!

现在先装 python 直接输入 apt install python2.7 它问确不确定,输 y 按ENTER就可以了。

安装好后,输 python2.7 就可以用了。退出按 CTRL Z
现在装java
输入 apt install default-jre,同样操作。
装好后输java -version如果有版本号打印出来就说明成功了

# ubuntu
 curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.35.3/install.sh | bash
 # 也可以用 wget
 # wget -qO- https://raw.githubusercontent.com/nvm-sh/nvm/v0.35.3/install.sh | bash
 ​
 export NVM_DIR="$([ -z "${XDG_CONFIG_HOME-}" ] && printf %s "${HOME}/.nvm" || printf %s "${XDG_CONFIG_HOME}/nvm")"
 [ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh" # 加载 nvm
 ​
 nvm install node # 安装最新版 node.js
 nvm use node # 现在可以用 node 了
 node -v # 确定可以使用 node
 npm -v # 确定可以使用 npm</pre>

OK!全部搞定!可以开始开发了!我在这篇文章给出了修改后 scratch-blocks/build.py 的代码。直接粘贴进你的就可以了。现在在 scratch-blocks 用 WSL Bash 运行 npm install 应该就没问题了。

每次你修改scratch-blocks后,运行npm run prepublish就可以了。注意要用 WSL Bash 运行。可以用 VSCode 终端,其它编辑器我不知道。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。