Aurelia bundle with gulp throws "TypeError: Path must be a string. Received undefined"

Aurelia bundle with gulp throws "TypeError: Path must be a string. Received undefined"

我正在使用 skeleton-typescript aurelia skeleton-navigation 包,当 运行 gulp bundle 它给我一个错误,指出路径必须是一个字符串但未定义

TypeError: Path must be a string. Received undefined
    at assertPath (path.js:7:11)
    at Object.basename (path.js:801:5)
    at exports.writeOutputs (C:\Users\joaoe\Desktop\skeleton-navigation\skeleton-typescript\node_modules\systemjs-builder\lib\output.js:137:23)
    at C:\Users\joaoe\Desktop\skeleton-navigation\skeleton-typescript\node_modules\systemjs-builder\lib\builder.js:575:14
    at tryCatcher (C:\Users\joaoe\Desktop\skeleton-navigation\skeleton-typescript\node_modules\systemjs-builder\node_modules\bluebird\js\release\util.js:16:23)
    at Promise._settlePromiseFromHandler (C:\Users\joaoe\Desktop\skeleton-navigation\skeleton-typescript\node_modules\systemjs-builder\node_modules\bluebird\js\release\promise.js:502:31)

所有 gulp 个相关文件 can be found here 因为有不止一个。

即使是克隆的包也会抛出那个。

我是 运行 Node 6.0.0,并在 Windows 10.

上使用 5.9.1 进行了测试

我需要将某些 属性 设置为 path 吗?似乎与 Aurelia 预建任务有关,从评论来看也可能是环境问题。

当我追踪它时,问题似乎是 node-gyp、Windows 和节点 6

的丑陋组合

因此,按照 official repo 中的 OS 步骤安装 node-gyp 所需的所有依赖项。不幸的是,现在如果您 运行 宁 Windows 可能需要安装 Visual Studio。然后运行 npm install 到repository上看看有没有报错,现在应该没有了。然后尝试 gulp 捆绑它现在应该可以工作了。将节点降级到 5.11 后,我能够再次 运行,我没有使用节点 6 进行测试,但可以随意尝试。