模块构建失败:错误:生成 bin/rails ENOENT

jon*_*hue 4 ruby-on-rails erb webpack enoent webpacker

添加 ERB 加载程序并将.erb文件扩展名添加到我的application包(使用webpacker)后,我收到以下错误:

ERROR in ./app/webpack/packs/application.js.erb
Module build failed: Error: spawn bin/rails ENOENT
    at _errnoException (util.js:1024:11)
    at Process.ChildProcess._handle.onexit (internal/child_process.js:190:19)
    at onErrorNT (internal/child_process.js:372:16)
    at _combinedTickCallback (internal/process/next_tick.js:138:11)
    at process._tickCallback (internal/process/next_tick.js:180:9)
 @ multi (webpack)-dev-server/client?http://localhost:3035 ./app/webpack/packs/application.js.erb
Run Code Online (Sandbox Code Playgroud)

样品hello_erb.js.erb包也会发生这种情况。

这是一个重现问题的示例应用程序:https : //github.com/jonhue/test_app

Erv*_*ouS 5

您可能缺少生成的文件

如果您丢失了bin/rails可执行文件,也许您是从遵循此问题步骤的存储 库克隆的,如果您正确安装了 rails,然后运行,您的环境应该很好:

导轨 < 5

$ bundle exec rake rails:update:bin
Run Code Online (Sandbox Code Playgroud)

导轨 >= 5

$ rails app:update:bin
Run Code Online (Sandbox Code Playgroud)

您可能在 webpack 安装和/或配置方面遇到问题

如果这些文件bin\存在,您在安装和/或配置 webpack可能会遇到问题。尝试创建一个项目,按照文档安装所有内容,使用 GitHub 等版本控制系统提交它,复制/粘贴您的项目配置和git diff它,我敢打赌您会发现它们之间的差异。

您正在使用 Windows 或某些有问题的环境

如果是这种情况,已经有讨论在 webpacker github 中的一个未解决的问题中修复它。但你可以尝试这样的东西直接使用从GitHub webpacker以获得最新的补丁,降级到其它版本,看看结果是不同的,或者直接从源使用的WebPack和更改文件install.rake,让你打电话./bin/rails app:template...到刚刚rails app:template...