對(duì)“Screeps 使用 server-mockup 進(jìn)行測(cè)試”一文的補(bǔ)充

非常感謝 @HoPGoldy 大佬對(duì)screeps的介紹,新人少走了很多彎路。本文主要針對(duì)今天(2022年9月)照做(http://www.itdecent.cn/p/31f8319bc2cd)時(shí)各種報(bào)錯(cuò)做補(bǔ)充,請(qǐng)大家仍然先通過大佬文章,再看本文的補(bǔ)充,然后再操作配置環(huán)境。

一切都發(fā)生在“依賴安裝 npm install --save-dev screeps-server-mockup fs-extra”這里。

0. 安裝python27,建議用`conda`來做,總不能2022年還全局用python2吧 :-)

1. 首先可以單獨(dú)安裝fs-extra, `npm install --save-dev fs-extra`,此時(shí)對(duì)環(huán)境應(yīng)該沒有特別的要求(我是遇到問題想先安裝一個(gè)再說所以這樣做的,但應(yīng)該先做下一步,再做本步。

2. 首先切換到node12。建議使用nvm切換(linux,windows都有)。

為何要用node12 見大佬文章評(píng)論區(qū)和 issue:

* https://github.com/screepers/screeps-server-mockup/issues/51

* https://github.com/laverdet/isolated-vm/issues/184

* https://github.com/screepers/screeps-typescript-starter 里Basic Usage一節(jié)明確說了 node12

3. 手動(dòng)安裝webpack `npm install --save-dev webpack@3`

為何,看到了安裝 screeps-server-mockup時(shí)的報(bào)錯(cuò)日志要運(yùn)行webpack

4. 手動(dòng)安裝vs2019生成工具,必須這個(gè)版本,vs2022不行

* 打開 https://visualstudio.microsoft.com/zh-hans/vs/older-downloads/,頁面翻到下面,選擇2019下載,要登錄微軟賬戶

* 登錄賬戶后進(jìn)入新頁面,找到“Build Tools for Visual Studio 2019 (version 16.11)”下載并安裝,安裝后打開該工具,如圖勾選安裝

(直接用大佬的圖了)

為何不能用vs2022,因?yàn)檫@個(gè)版本node帶的node-gpy只支持到vs2019,見圖

nvm\v12.22.12\node_modules\npm\node_modules\node-gyp\lib\find-visualstudio.js

參考 https://juejin.cn/post/7102325221650071589

5. 好了,進(jìn)入conda(Anaconda Prompt (miniconda3))和vs2019環(huán)境(重要)來安裝 screeps-server-mockup,建議用cmd

* 找到開始菜單中conda和vs2019的快捷方式(Developer Command Prompt for VS 2019)里的具體進(jìn)入方式

%windir%\System32\cmd.exe "/K" D:\Program_Files\miniconda3\Scripts\activate.bat D:\Program_Files\miniconda3

%comspec% /k "D:\Program_Files\Microsoft Visual Studio\2019\BuildTools\Common7\Tools\VsDevCmd.bat"

* 開啟管理員模式cmd,依次輸入上面兩條命令(當(dāng)然不能直接復(fù)制我這里的使用,要用自己的電腦上快捷方式的地址)

* 使用conda開啟python2.7環(huán)境,這個(gè)就不仔細(xì)展開了,請(qǐng)網(wǎng)上自行搜索

* 運(yùn)行`npm config set msvs_version 2019` 和 `npm config set python python2.7`

* 開始安裝`npm install --save-dev screeps-server-mockup`

config set msvs_version 和 python這里參考

https://github.com/nodejs/node-gyp#on-windows

https://github.com/Microsoft/nodejs-guidelines/blob/master/windows-environment.md#compiling-native-addon-modules

6. 應(yīng)該能安裝成功了,繼續(xù)保持上一步的環(huán)境中,看大佬文章,新建“mockup.test.ts”文件,當(dāng)運(yùn)行·npm run test-integration·時(shí),可能已經(jīng)好了。但是我是從教程一路安裝過來的,安裝的 jest 是v29版本,會(huì)報(bào)錯(cuò)提示不識(shí)別“?.”語法,查詢后發(fā)現(xiàn)node12還不支持jest@^29里的寫法(https://segmentfault.com/a/1190000022447139 node14發(fā)布才支持),node_modules\jest\node_modules\jest-cli\build\cli\index.js


而jest@^28這里的代碼是

要更換前面教程提到的jest的版本@^28,當(dāng)然順便把@types/jest也更換吧

```

npm i -D jest@^28 @types/jest@^28

```

再運(yùn)行`npm run test-integration`就好了,本教程結(jié)束,開始繼續(xù)看大佬文章吧

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容