我正在做一个小项目https://github.com/lucassus/mongo_browser这是一个在sinatra.rb框架中编写的应用程序,以及用于编译coffescript和sass的简单资产管道。由于应用程序发布为gem,我不得不将sprockets
、coffee-script
和sass
添加到gem的运行时依赖项中。
这种解决方案有一些显著的缺点:
- 端点用户必须安装所有这些依赖项
- 他必须安装一个JavaScript运行时(例如nodejs)
- 由于资产汇编,应用程序速度稍慢
最大的问题是:是否有可能在gem内部分配编译的资产?
此外,我不想将编译后的资产存储在回购中,我只想在gem包过程中编译它们。宝石包装挂钩什么的?
当然,将它们添加到files=
中。对于编译,请在开头将逻辑添加到.gemspec
中。毕竟这只是红宝石。