原文地址:https://blog.csdn.net/litianquan/article/details/82735809
Scratch www要基於Nodejs的環境才可以運行,我嘗試了在Windows、Ubuntu、CentOS等操作系統上安裝其環境,安裝node環境比較簡單,但是不同系統在編譯代碼方面問題較多,在Windows上必須要有Microsoft Visual Studio環境,Ubuntu上面又相關依賴又有點不同。最終,在CentOS上搭建成功,現將搭建步驟記錄如下:
一、環境准備
1、安裝配合軟件
因為代碼需要編譯,所以要提前將所需要的幾個組件進行安裝。
- git(從github上獲取代碼)
- python(有些Nodejs模塊需要用到python)
- gcc(在編譯的時候會用到)
- gcc-c++(在編譯的時候會用到)
- openssl-devel(在編譯的時候會用到)
- make(在編譯工具)
執行下列代碼:
yum -y install git gcc gcc-c++ openssl-devel make python
2、使用curl下載並安裝nodejs yum源
搭建Nodejs環境方式有很多,比如下載包或用yum安裝等,我是使用yum安裝。在安裝之前要指定Nodejs的源。
curl --silent --location https://rpm.nodesource.com/setup_7.x | bash -
二、Nodejs安裝
1、執行命令安裝node
yum install -y nodejs
注:這里面的版本不需要指定,它是根據上一步中指定的源,如果用6.x的源,就會安裝6系列的最新版。
2、測試安裝是否成功
node -v
# v6.9.1
npm -v
# v3.10.8
注:node安裝完成之后,會將node和npm自動設置成服務。但是node自帶npm不一定是最新版本,可以使用下列命令,升級npm。
npm i npm -g
三、scratch www 安裝
1、安裝准備
按照scratch github上說明,原則上是不需要進行提前准備,但是在編譯過程中會提示一些信息,例如下列信息。為了避免錯誤,總結之前的安裝過程,可以講一些模塊提前進行安裝。
-
npm WARN prefer global i18next-conv@ 2.5 .0 should be installed with -g
-
npm WARN prefer global jshint@ 2.9 .4 should be installed with -g
-
npm WARN prefer global node-gyp@ 3.4 .0 should be installed with -g
(1)webpack
npm install webpack -g
(2)其他輔助
-
npm install i18next- conv -g
-
npm install jshint -g
-
npm install node-gyp -g
2、獲取工程代碼
執行下列命令:
git clone https://github.com/LLK/scratch-www.git
注:代碼檢出之后會自動創建scratch-www目錄
3、Build代碼
(1)進入目錄
cd scratch-www
(2)安裝node-sass
正常情況下,在執行install命令時,會自動安裝node-sass依賴。但是在實際過程中,自動下載和編譯node-sass經常會出錯,即使手動安裝的node-sass也會出錯。在我的安裝過程中,我使用的是從阿里庫中編譯好的node-sass,執行下列命令:
-
npm install -g cnpm --registry=https://registry.npm.taobao.org
-
cnpm install node-sass@ 3.11 .2
注:默認安裝的node-sass版本是3.3.3,我安裝的是最新版本。
(3)Build scratch
分別執行下列命令:
-
npm install
-
npm run build
(4)運行
如果在build過程中沒出現什么錯誤,編譯成功之后就可以通過下列命令,運行scratch www。
npm start
注:以上命令均需要在scratch-www目錄下執行。
如果屏幕上顯示出正常啟動了8333端口。那么就可以通過瀏覽器訪問了。
四、作為服務運行
node應用通過npm來執行,但是每次執行都需要一直保持,一旦關閉當前Terminal,程序就將終止。為了保持程序持續運行,可以使用forever
(1)安裝forever
npm install forever -g
(2)進入應用目錄運行程序
forever start app.js
也可以通過下面的方式運行:
forever start -c "npm start" ./
可以通過下面命令查看正在運行的應用:
forever list