Webpacker 在 manifest.json Heroku Production 中找不到应用程序.js



我在heroku上的应用程序遇到了网络打包程序问题。

日志:

ActionView::Template::Error (Webpacker can't find application.js in /app/public/packs/manifest.json. Possible causes:
2018-07-04T18:47:08.192729+00:00 app[web.1]: 1. You want to set webpacker.yml value of compile to true for your environment
2018-07-04T18:47:08.192730+00:00 app[web.1]:    unless you are using the `webpack -w` or the webpack-dev-server.
2018-07-04T18:47:08.192733+00:00 app[web.1]: 2. webpack has not yet re-run to reflect updates.
2018-07-04T18:47:08.192734+00:00 app[web.1]: 3. You have misconfigured Webpacker's config/webpacker.yml file.
2018-07-04T18:47:08.192735+00:00 app[web.1]: 4. Your webpack configuration is not creating a manifest.
2018-07-04T18:47:08.192737+00:00 app[web.1]: Your manifest contains:
2018-07-04T18:47:08.192738+00:00 app[web.1]: {
2018-07-04T18:47:08.192740+00:00 app[web.1]: }
2018-07-04T18:47:08.192741+00:00 app[web.1]: ):

我有一个manifest.json文件,其中包含application.js

{
"application.css": "/packs/application-c922057d6b9db34084d6e52c6f32baa9.css",
"application.css.map": "/packs/application-c922057d6b9db34084d6e52c6f32baa9.css.map",
"application.js": "/packs/application-ab33c1479403810d7775.js",
"application.js.map": "/packs/application-ab33c1479403810d7775.js.map"
}

日志中的最后一行很有趣:

2018-07-04T18:47:08.192737+00:00 app[web.1]: Your manifest contains:
2018-07-04T18:47:08.192738+00:00 app[web.1]: {
2018-07-04T18:47:08.192740+00:00 app[web.1]: }

json 中的格式是否以某种方式错误?

我尝试运行bundle exec rails webpacker:compile这很好,并且我还更新了binstubbundle exec rails webpacker:binstubs,在推送到Heroku之后似乎都没有区别。

我还能尝试什么?

  • 我删除了文件夹node_modules
  • 然后在终端yarn add @rails/webpacker@next
  • 然后bundle exec rails webpacker:install

之后,它被修复了

我遇到了同样的问题,花了几天时间试图解决它。最后安装了网络打包程序 3.5 并且工作正常。

这不是最好的解决方案,但这让我的应用程序启动。我去了一个兔子洞试图解决这个问题。

bundle exec bin/webpack-dev-server

这个命令解决了我的问题。我是 webpack 的新手,所以我不知道如何/为什么。

如果您仍然遇到此问题,我遇到了完全相同的问题,似乎没有其他答案可以为我解决它。这个 GH 线程建议确保资产不会在本地预编译(通过删除/public/assets/public/packs目录,本质上鼓励 Heroku 为自己编译。似乎现在已经为我解决了这个问题。

https://github.com/rails/webpacker/issues/532

我遇到了完全相同的错误。如果您还没有,请尝试此操作。

运行bundle exec rails webpacker:install

检查控制台日志中的错误消息

The engine "node" is incompatible with this module. Expected version ">= 10.13.0". Got "10.0.0"
error Found incompatible module.

如果是,则可以通过 3 个步骤解决此问题:

$ node -v检查节点版本

$ nvm install 'required node version'更改节点版本

$ bundle exec rails webpacker:install它将验证您的package.json,解析并获取所有软件包,链接并保存依赖项

在我的情况下,以下步骤有助于Webpacker找不到的新添加的包文件

RAILS_ENV=staging rake  assets:clean
rake assets:clobber
RAILS_ENV=production rake assets:precompile

相关内容

最新更新