foundation-cli创建项目出错的解决方案

Posted 94pm

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了foundation-cli创建项目出错的解决方案相关的知识,希望对你有一定的参考价值。

使用foundation-cli创建项目时,如果当前的node版本是12的话就会出现如下错误:

fs.js:27
const  Math, Object  = primordials;
                         ^

ReferenceError: primordials is not defined
    at fs.js:27:26

此时需要将node版本切换为10,可安装n这个npm包来实现在一台电脑上运行多个node版本.

node版本切换为10后,再运行创建项目命令,又会出现如下错误:

npm ERR! git rev-list -n1 4.0: fatal: ambiguous argument ‘4.0‘: unknown revision or path not in the working tree.
npm ERR! git rev-list -n1 4.0: Use ‘--‘ to separate paths from revisions, like this:
npm ERR! git rev-list -n1 4.0: ‘git <command> [<revision>...] -- [<file>...]‘
npm ERR! git rev-list -n1 4.0:
npm ERR! git rev-list -n1 4.0: fatal: ambiguous argument ‘4.0‘: unknown revision or path not in the working tree.
npm ERR! git rev-list -n1 4.0: Use ‘--‘ to separate paths from revisions, like this:
npm ERR! git rev-list -n1 4.0: ‘git <command> [<revision>...] -- [<file>...]‘
npm ERR! git rev-list -n1 4.0:
npm ERR! git clone --template=/home/dev/.npm/_git-remotes/_templates --mirror git@github.com:gulpjs/gulp-cli.git /home/dev/.npm/_git-remotes/git-github-com-gulpjs-gulp-cli-git-15c23bd3: Cloning into bare repository ‘/home/dev/.npm/_git-remotes/git-github-com-gulpjs-gulp-cli-git-15c23bd3‘...
npm ERR! git clone --template=/home/dev/.npm/_git-remotes/_templates --mirror git@github.com:gulpjs/gulp-cli.git /home/dev/.npm/_git-remotes/git-github-com-gulpjs-gulp-cli-git-15c23bd3: Permission denied (publickey).
npm ERR! git clone --template=/home/dev/.npm/_git-remotes/_templates --mirror git@github.com:gulpjs/gulp-cli.git /home/dev/.npm/_git-remotes/git-github-com-gulpjs-gulp-cli-git-15c23bd3: fatal: Could not read from remote repository.
npm ERR! git clone --template=/home/dev/.npm/_git-remotes/_templates --mirror git@github.com:gulpjs/gulp-cli.git /home/dev/.npm/_git-remotes/git-github-com-gulpjs-gulp-cli-git-15c23bd3:
npm ERR! git clone --template=/home/dev/.npm/_git-remotes/_templates --mirror git@github.com:gulpjs/gulp-cli.git /home/dev/.npm/_git-remotes/git-github-com-gulpjs-gulp-cli-git-15c23bd3: Please make sure you have the correct access rights
npm ERR! git clone --template=/home/dev/.npm/_git-remotes/_templates --mirror git@github.com:gulpjs/gulp-cli.git /home/dev/.npm/_git-remotes/git-github-com-gulpjs-gulp-cli-git-15c23bd3: and the repository exists.

这时候需要修改文件中的package.json文件devDependencies节点下的gulp属性,把.git#4.0删除掉(参考链接),修改后的gulp字段值如下:

 "gulp": "git+https://github.com/gulpjs/gulp.git",

手动输入npm i来安装项目文件,可能又会出现如下错误:

phantomjs-prebuilt@2.1.14 install /Users/will/work/my-project/node_modules/phantomjs-prebuilt
> node install.js

PhantomJS not found on PATH
Downloading https://github.com/Medium/phantomjs/releases/download/v2.1.1/phantomjs-2.1.1-macosx.zip
Saving to /var/folders/mh/2ptfthxj2qb49jscj1b0gjsm0000gn/T/phantomjs/phantomjs-2.1.1-macosx.zip
Receiving...

Error making request.
Error: connect ETIMEDOUT 54.231.113.227:443
    at Object.exports._errnoException (util.js:1018:11)
    at exports._exceptionWithHostPort (util.js:1041:20)
    at TCPConnectWrap.afterConnect [as oncomplete] (net.js:1090:14)

这是天朝网络的原因:它的安装过程中要去 github 下载一个包,而 github release 文件放在亚马逊 aws 上(被墙了)。解决方法是借助淘宝镜像 (http://cnpmjs.org/downloadshttps://npm.taobao.org/mirrors/phantomjs/) 安装,输入以下命令:

PHANTOMJS_CDNURL=https://npm.taobao.org/mirrors/phantomjs npm install phantomjs-prebuilt

同样安装 node-sass 也会出现类似的问题,解决方法依然是淘宝镜像:

SASS_BINARY_SITE=https://npm.taobao.org/mirrors/node-sass npm install node-sass

如果不想每次都输入前面变量可以将它们写入 ~/.npmrc 文件中??(https://docs.npmjs.com/files/npmrc)

sass_binary_site = https://npm.taobao.org/mirrors/node-sass
phantomjs_cdnurl = https://npm.taobao.org/mirrors/phantomjs
registry = https://registry.npm.taobao.org

经过这么一番折腾,项目终于跑起来了。

 

以上是关于foundation-cli创建项目出错的解决方案的主要内容,如果未能解决你的问题,请参考以下文章

使用 Visual Studio 2008 创建新的 WiX 安装项目时出错

命令行创建Maven项目卡住以及出错解决办法。

FlashDevelop 为简单项目创建 APK 时出错

在 Pandas 上创建变量时出错 - 传递的项目数错误

基于thinkphp开发的项目部署到由宝塔面板创建的LNMP服务器上解决路径出错问题

关于Webstorm运行react-native中的Android项目出错的解决办法