You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Windows机器上rake assets:precompile执行失败问题咨询

解决Rails 5.1 Windows环境下rake assets:precompile异常问题

我之前在Windows环境下处理过好几个类似的Rails 5.1资产预编译故障,给你几个实测有效的解决方向:

  • 解决Windows路径长度限制问题
    Windows默认有路径长度限制(约260字符),Rails生成的带哈希的资产文件名很容易让路径超出限制,导致写入中断。你可以试试两个方案:
    1. 启用Windows的长路径支持(Windows 10 1607及以上版本可通过组策略或注册表开启);
    2. 缩短Rails生成的资产哈希长度,在config/application.rb中添加配置:
config.assets.digest_length = 16

修改后重启终端,再执行预编译命令。

  • 锁定Sprockets兼容版本
    Rails 5.1默认的Sprockets版本在Windows上可能存在兼容性问题,建议锁定到3.x的稳定版本:
    在Gemfile中修改:
gem 'sprockets', '~> 3.7.2'

然后执行bundle update sprockets,更新依赖后重新尝试预编译。

  • 明确指定环境并切换Shell执行
    有时候默认执行环境不是production,或者PowerShell的命令解析有问题,试试在CMD中执行明确指定环境的命令:
bundle exec rake assets:precompile RAILS_ENV=production
  • 清理缓存后重试
    先清理旧的资产缓存和临时文件,避免残留文件干扰:
bundle exec rake assets:clean
bundle exec rake tmp:clear

完成后再重新运行预编译命令。

内容的提问来源于stack exchange,提问作者Uli

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.27 04:02:44