"No such file to load" 解决策略, ruby on rails 开发注意事项

服务器运行时解决

  先来总结吧!
  在我们建立 rails 应用的时候,我们应该:
[list=1]
  • 尽量把各种用到的插件放到RAILS_ROOT/vendor目录下面
  • 当然我们的rails 应该把它放在RAILS_ROOT/vendor/rails目录下。
  • rake rails:freeze:edge REVISION=2.2  # down 一个指定的版本.
    rake rails:freeze:gems  # 当前系统默认的版本
    
  • 还有写好应用程序的readme 介绍当前应用程序所用配置环境.列出个清单。
  • rails   version=2.2, url = ""
    ruby    version=1.8.6,  url =""
    RMgic version=1.9.2 ,  url =''
    插件的清单……
    acts_as_ferret  version=*, url= ''
    

    [/list]
    instant: http://instantrails.rubyforge.org/
    ruby on rails捆绑解决方案,它把ror环境,服务器、数据库、ruby,rails都捆绑起来,down下来解压就可以开始做rails应用程序了. 但目前还没有linux平台解决方案.
    下面就随便侃侃
      通常我们的ror应用程序,刚开始学习阶段,用到的大堆东西,当然指的是那些插件了。
    因为好用嘛,都拿来用,这就成为了将来的遗留应用程序——将来运行大费周折啊!
    当我们将来某一天想再把它跑起来用的时候,发现问题多多呀。这时候请您要冷静,但也要
    把你的眼睛擦得雪亮,不然,一个小问题将花去你太多时间,不值……

    activesupport/lib/active_support/dependencies.rb:496:in `require': No such file to load 
    `gem_original_require': no such file to load -- *  (MissingSourceFile)
    
    出现此类错误,你应该检查 no such file 后面的名字如 ferret.
    那么你应该去检查你本机是否安装了ferret这个包.  
    gem list --local 
    如果发现此处也没有,那么你在到ror的vendor/plugin查看有无此包;
    倘若有,再检查RAILS_ROOT/config/envirment.rb中,是否遗漏了此插件的加载(一般来说这
    只会发生在rails1.2的版本之前,之后的插件都会按照插件包的名称顺序加载。)
    

    
    activesupport/lib/active_support/dependencies.rb:496:in `require': No such file to load -- ferret (MissingSourceFile)
    gem install ferret  # 装了此包便解决此问题。
    此问题出现在在应用程序使用了的acts_as_ferret插件的时候,而没有安装它所依赖的ferret 包所致
    

    你可能感兴趣的:(应用服务器,linux,Ruby,Rails)