我已經繼承了一個使用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安裝不? –