这个SailsJS应用程序适用于我的办公室机器,但不适用于本地,我想知道为什么?在本地我运行linux.在办公室Mac.我在当地得到
错误:ENOENT:在错误(天然)在Object.fs.statSync没有这样的文件或目录,STAT '/home/jiewmeng/Dropbox/meclub/node_modules/.bin/cdl'(fs.js:849:18)在/家/ jiewmeng /升降梭箱/ meclub/node_modules /包括-所有/ index.js:44:12在Array.forEach(天然)在requireAll(/home/jiewmeng/Dropbox/meclub/node_modules/include-all/index.js: 40:9)在/home/jiewmeng/Dropbox/meclub/node_modules/include-all/index.js:50:23在Array.forEach(天然)在requireAll(/家/ jiewmeng /升降梭箱/ meclub/node_modules /包括 - 所有/ index.js:40:9)在buildDictionary(/home/jiewmeng/Dropbox/meclub/node_modules/sails/node_modules/sails-build-dictionary/index.js:68:14)在Function.module.exports.optional (/home/jiewmeng/Dropbox/meclub/node_modules/sails/node_modules/sails-build-dictionary/index.js:160:9)在Array.async.auto.nodeModulesFolder(/ home/jiewmeng/Dropbox/meclub/node_modules/sails/lib/hooks/moduleloader/index.js:379:27)/home/jiewmeng/Dropbox/meclub/node_modules/sails/node_modules/async/lib/async.js:484:3 8在_each(/home/jiewmeng/Dropbox/meclub/node_modules/sails/node_modules/async/lib/async.js:46:13)at Object.async.auto(/ home/jiewmeng/Dropbox/meclub/node_modules/sails) /钩子上的Hook.loadUserHooks(/home/jiewmeng/Dropbox/meclub/node_modules/sails/lib/hooks/moduleloader/index.js:363:13)/node_modules/async/lib/async.js:455:9).绑定[作为loadUserHooks](/home/jiewmeng/Dropbox/meclub/node_modules/sails/node_modules/lodash/dist/lodash.js:729:21)在Hook.initialize(/ home/jiewmeng/Dropbox/meclub/node_modules/sails) /lib/hooks/userhooks/index.js:29:18)在Hook.bound [如初始化](/home/jiewmeng/Dropbox/meclub/node_modules/sails/node_modules/lodash/dist/lodash.js:729:21 )/home/jiewmeng/Dropbox/meclub/node_modules/sails/lib/hooks/index.js:75:14 athome/jiewmeng/Dropbox/meclub/node_modules/sails/node_modules/async/lib/async.js: 451:17 at /home/jiewmeng/Dropbox/meclub/node_modules/sails/node_modules/async/lib/async.js:441:17 at_each(/ home/jiewmeng/Dropbox/meclub/node_modules/sails/node_m odules /异步/ LIB/async.js:46:13)在Immediate.taskComplete(/home/jiewmeng/Dropbox/meclub/node_modules/sails/node_modules/async/lib/async.js:440:13)在processImmediate [如_immediateCallback](timers.js:374:17)
我在用Sails 0.11.服务器实际上可以从一开始Sails 0.12就有一些突破性变化,因此我现在仍然坚持0.11.我在用Node 4.
我认为您正在使用Dropbox将办公室笔记本电脑与您的计算机同步,因为某些文件正在添加到您的项目中,这不会在一个操作系统中引起问题,但可能会在其他操作系统中产生问题.
因此,我建议您遵循标准实践来克隆项目
不要将dropbox用于项目同步.使用版本控制系统克隆/拉取代码,并安装所有依赖项
因为node-gyp针对OS编译Node.js的本机附加模块
并希望在此之后它应该工作正常.
如果您不想使用VCS,则可以按照以下步骤操作:
# cd /home/jiewmeng/Dropbox/meclub
# sudo rm -rf node_modules
# rm -rf ~/.npm
# npm cache clear
# npm install
Run Code Online (Sandbox Code Playgroud)
这就是你需要做的.
node_modules如果要搬到新机器,则需要重建.你可以这样做:
cd /home/jiewmeng/Dropbox/meclub
rm -rf node_modules
npm install
Run Code Online (Sandbox Code Playgroud)
这是必需的原因是.bin文件夹中充满了符号链接.这可能会导致Dropbox出现问题.此外,.bin文件夹中的资源有时是本机编译的.无需重新编译即可从Ubuntu迁移到Mac OSX,这对于许多组件来说都是运行时的问题.
与VCS一样,我建议您根本不同步node_modules文件夹.这不应该在机器之间共享.您可以在每台计算机上使用NPM管理这些依赖项.
| 归档时间: |
|
| 查看次数: |
915 次 |
| 最近记录: |