我在Rails资产预编译方面遇到了一些问题,我以前从未遇到过这些问题。在此应用程序中运行rake assets:precomile时,我看到每个资源都被编译了两次。如果我跟踪production.log,我可以看到它基本上看起来像是连续两次运行整个命令。这是日志中的修改过的样本。
Connecting to database specified by database.yml
Compiled jquery.js (97ms) (pid 56296)
Compiled jquery.cycle.all.js (2ms) (pid 56296)
Compiled jquery.numeric.js (0ms) (pid 56296)
Compiled matchMedia.js (0ms) (pid 56296)
Compiled fastclick.js (1ms) (pid 56296)
... etc ...
Connecting to database specified by database.yml
Compiled jquery.js (97ms) (pid 56296)
Compiled jquery.cycle.all.js (2ms) (pid 56296)
Compiled jquery.numeric.js (0ms) (pid 56296)
Compiled matchMedia.js (0ms) (pid 56296)
Compiled fastclick.js (1ms) (pid 56296)
... etc ...检查编译后的文件确认它已经编译了所有内容两次,所以所有的CSS & JS都是重复的。
我使用的是Rails 3.2.13和Ruby 2.0.0-p0 (也尝试了1.9.3-p392)。
我以前从来没有遇到过任何关于资产预编译的问题,所以如果有人有任何想法来解释为什么这次它会表现出这种不寻常的行为,我很想听听。
干杯!
发布于 2013-05-11 05:38:44
更多地解释一下alistairholt的“陷阱”:当运行rake assets:precompile时,资产被预编译并放置在public/assets中。事实证明,在开发环境中加载web应用程序时,这会产生冲突,因为它既提供来自public/assets的文件,也提供来自app/assets文件夹的资源。
https://stackoverflow.com/questions/16489853
复制相似问题