最近在使用macos部署uniswapv2的前端,记录开发环境搭建。
uniswap v2前端项目地址:
git clone https://github.com/Uniswap/uniswap-interface.git
上面clone的是master分支,目前master分支已经是v3版本,需要切换到v2版本的tag:
git checkout -b uniswapv2_deploy v4.115.0
安装yarn
curl -o- -L https://yarnpkg.com/install.sh | bash
推荐这个方式安装,如果报错无权限,需要用chmod命令设置文件权限。
验证是否安装成功:yarn --version
如果出现和我一样报错:
还需要设置一下环境变量:
- 打开环境变量配置文件
open -e ~/.bash_profile,该脚本开机会自动执行 - 将图中配置添加到配置文件中
- 保存配置文件,执行
source ~/.bash_profile重新加载配置文件
安装成功
安装Node
由于uniswapv2前端项目的Node版本是14,而我的macos默认版本是15,所以需要重新安装低版本Node。使用node版本管理模块 n可以管理Node版本。
1.安装node版本管理模块n
sudo npm install n -g
2.安装指定版本Node
- 安装稳定版:
sudo n stable - 安装最新版:
sudo n latest - 安装制定版本:
sudo n 版本号
部署需要14版本的Node,进行降级:
Nod和npm版本都降级了。
运行uniswapv2前端项目
由于yarn需要下载包,需要设置从淘宝镜像下载,此处配置yarn全局配置为淘宝镜像,如果不配置,可能会卡在:
打开全局配置文件:open -e ~/.yarnrc
添加淘宝镜像配置:
registry "https://registry.npm.taobao.org"
sass_binary_site "https://npm.taobao.org/mirrors/node-sass/"
phantomjs_cdnurl "http://cnpmjs.org/downloads"
electron_mirror "https://npm.taobao.org/mirrors/electron/"
sqlite3_binary_host_mirror "https://foxgis.oss-cn-shanghai.aliyuncs.com/"
profiler_binary_host_mirror "https://npm.taobao.org/mirrors/node-inspector/"
chromedriver_cdnurl "https://cdn.npm.taobao.org/dist/chromedriver"
保存,运行yarn,执行成功:
运行yarn start:
又是版本不兼容,需要对webpack进行降级
安装制定版本webpack
可以通过npm对webpack进行卸载,然后安装指定版本的webpack,由于npm从国外网址下载依赖慢,切换npm淘宝镜像:
设置npm使用淘宝镜像 npm config set registry registry.npm.taobao.org`
查询镜像地址:
npm config get registry
查看镜像地址:
npm get registry
切换镜像地址会导致发布包到国外网址有问题,需要切换回去:
npm config set registry https://registry.npmjs.org
卸载当前版本的webpack:
npm uninstall webpack -g
安装指定版本webpack:
npm install webpack@4.44.2 -g