运行'ember server'导致构建失败并出现EEXIST错误?

Nag*_*Nag 8 javascript ember.js

ember server今天运行时遇到此随机构建错误.在你问之前,这是我的Ember CLI,Node和NPM版本:

version: 0.1.15
node: 0.10.33
npm: 2.1.8
Run Code Online (Sandbox Code Playgroud)

我使用创建了一个新的Ember项目ember new [app name].一切正常.然后我跑了ember server,打开页面,http://localhost:4200/页面显示.然后我创建了一个名为index using的新路由ember generate route index.与往常一样,Ember CLI创建了路由,Handlebars文件和匹配的test.js. 在此之后,运行的Ember服务器进程立即引发了构建错误:

file changed templates/index.hbs
EEXIST, file already exists '/Users/Nagarjun/Code/RideBazaar/web-client/tmp/class-tmp_cache_dir-hBTLOW8N.tmp'
Error: EEXIST, file already exists '/Users/Nagarjun/Code/RideBazaar/web-client/tmp/class-tmp_cache_dir-hBTLOW8N.tmp'
    at Object.fs.symlinkSync (fs.js:741:18)
    at symlink (/Users/Nagarjun/Code/RideBazaar/web-client/node_modules/ember-cli/node_modules/symlink-or-copy/index.js:82:14)
    at Function.symlinkOrCopySync [as sync] (/Users/Nagarjun/Code/RideBazaar/web-client/node_modules/ember-cli/node_modules/symlink-or-copy/index.js:58:5)
    at /Users/Nagarjun/Code/RideBazaar/web-client/node_modules/ember-cli/node_modules/broccoli-sourcemap-concat/node_modules/broccoli-caching-writer/index.js:103:21
    at lib$rsvp$$internal$$tryCatch (/Users/Nagarjun/Code/RideBazaar/web-client/node_modules/ember-cli/node_modules/promise-map-series/node_modules/rsvp/dist/rsvp.js:489:16)
    at lib$rsvp$$internal$$invokeCallback (/Users/Nagarjun/Code/RideBazaar/web-client/node_modules/ember-cli/node_modules/promise-map-series/node_modules/rsvp/dist/rsvp.js:501:17)
    at lib$rsvp$$internal$$publish (/Users/Nagarjun/Code/RideBazaar/web-client/node_modules/ember-cli/node_modules/promise-map-series/node_modules/rsvp/dist/rsvp.js:472:11)
    at Object.lib$rsvp$asap$$flush [as _onImmediate] (/Users/Nagarjun/Code/RideBazaar/web-client/node_modules/ember-cli/node_modules/promise-map-series/node_modules/rsvp/dist/rsvp.js:1290:9)
    at processImmediate [as _immediateCallback] (timers.js:345:15)
Run Code Online (Sandbox Code Playgroud)

奇怪的是,当我点击时ctrl c,停止服务器并重新启动它,构建成功.但是,当我再次对文件进行更改时,我得到了同样的错误.有线索吗?

jmu*_*yau 14

看起来像是一个针对ember-cli项目记录的bug(GitHub Issue#3413)

我设法通过遵循GitHub问题#3413中的说明来修复它.要解决此问题:

  1. 添加"rimraf":"2.2.8"到您的package.json文件(在devDependencies下面的部分中"glob": "^4.0.5")
  2. 删除node_modules目录(例如在Mac或Linux上执行rm -rf ./node_modules)
  3. 再跑npm install一次