所以我试图将项目推到Heroku上,但我一直遇到这个问题。
我尝试了各种不同的选项,但仍然给我相同的错误
错误是:
远程:----->远程检测rake任务:----->为Rails资产管道远程准备应用程序:运行:rake asset:precompile remote:在系统中未检测到纱线可执行文件。远程: 在https://yarnpkg.com/en/docs/install远程下载纱:I, [2018-07-11T15:38:38.244799#1469] INFO-:写作 /tmp/build_3216acb17a7c6513d0bbba80e51b87ec/public/assets/America_Latina_red.svg-81715f166cd02474df00ef6b91e8b614eee8c4b849a497d4b3d5f548b83fcd59.png 远程:我,[2018-07-11T15:38:38.263447#1469] INFO-: 写作 /tmp/build_3216acb17a7c6513d0bbba80e51b87ec/public/assets/magnifyingglass-f96713ba24099755cdd1bb1bb92c720b1136c87a85f437489a8cdb47e0f272af.png 远程:耙中止!远程:Sprockets :: FileNotFound: 找不到类型为“ bulma-start / _javascript / main.js”的文件 远程“ application / javascript”:在以下路径中检入:
它说Sprockets:FileNotFound ... 一切都在本地工作。我也在用RoR
答案 0 :(得分:2)
看起来您有节点依赖项,因此您的应用程序应该运行多个构建包(ruby 和 nodejs)。以下是使用 Heroku CLI 定义它们的方法:
heroku buildpacks:set heroku/ruby
heroku buildpacks:add --index 1 heroku/nodejs
git push heroku main
在此处查找更多详细信息:https://devcenter.heroku.com/articles/using-multiple-buildpacks-for-an-app
答案 1 :(得分:0)
您在某处引用了bulma-start/_javascript/main.js
,但是该文件不存在。删除不良引用。
答案 2 :(得分:0)
我的/ node_modules位于我的.gitignore内部。 我从.gitignore中删除了节点模块,然后在我的终端中做了:
RAILS_ENV=production bundle exec rake assets:precompile
然后git add。
git commit-m“我的消息”
git push heroku master
这就是为什么当heroku预编译时出现错误的原因。