我已经继承了一个使用NodeJS构建它的项目。几个月来,一切都很好。我们已经建立了许多生产版本,没有任何问题。Gulp/NodeJS:在Ubuntu上Require('fs')失败,但在Windows上工作
输入xlsx.js.
由于添加此包作为依赖项,我们发现我们的Gulp构建适用于Windows,但不适用于Ubuntu(它是我们的构建机)。当我们构建在Ubuntu上,RequireJS barfs的要求(“FS”):
[email protected]:~/dev/eVGM-JavaScript-Client$ node --version
v4.6.1
[email protected]:~/dev/eVGM-JavaScript-Client$ gulp test
[15:19:35] Using gulpfile ~/dev/eVGM-JavaScript-Client/gulpfile.js
[15:19:35] Starting 'test'...
[15:19:35] Starting 'run-tests'...
07 11 2016 15:19:40.236:WARN [karma]: No captured browser, open http://localhost:9876/
07 11 2016 15:19:40.298:INFO [karma]: Karma v0.13.22 server started at http://localhost:9876/
07 11 2016 15:19:40.308:INFO [launcher]: Starting browser PhantomJS
07 11 2016 15:19:41.421:INFO [PhantomJS 2.1.1 (Linux 0.0.0)]: Connected on socket Hq69p1CiIhcsCDOGAAAA with id 72071968
07 11 2016 15:19:41.596:WARN [web-server]: 404: /base/jspm_packages/system-polyfills.js
07 11 2016 15:19:43.457:WARN [web-server]: 404: /base/fs.js
PhantomJS 2.1.1 (Linux 0.0.0) ERROR
Error: (SystemJS) XHR error (404 Not Found) loading /home/johnny/dev/eVGM-JavaScript-Client/fs.js
Error loading /home/johnny/dev/eVGM-JavaScript-Client/fs.js as "fs" from /home/johnny/dev/eVGM-JavaScript-Client/jspm_packages/github/sheetjs/[email protected]/xlsx.js
PhantomJS 2.1.1 (Linux 0.0.0): Executed 0 of 0 ERROR (2.27 secs/0 secs)
从我可以告诉,“FS”是一个内置的包的NodeJS。 (对吧?)它应该在那里。然而这不符合Gulp的说法。
如果我输入Node并在节点提示符处输入“require('fs')”,我会得到大量文本,告诉我Node正在查找软件包A-OK。
也许这是一个问题。也许这是一个Ubuntu问题。也许这是杰夫的一个白痴问题。无论出于何种原因,我无法让我们的构建从Gulp中找到fs,而只能在Ubuntu上找到fs。
任何帮助非常非常感激地接受......
感谢, 杰夫
难道这是某种路径问题?换句话说,fs.js是否驻留在我们的Windows安装知道的一些神奇的NodeJS目录中,但我们的Ubuntu安装不? –