2010-02-01 54 views
1

:沒有這樣的文件來加載 - HAML(MissingSourceFile)當我在生產部署我RoR應用程序,然後我收到以下錯誤`gem_original_require「

但這種寶石已經istalled。

我還插入了對這個路徑: - /主頁/ techvant/rails_app/techease /供應商/插件/ HAML/init.rb

這個init文件有如下代碼: -

begin 
    require File.join(File.dirname(__FILE__), 'lib', 'haml') # From here 
    rescue LoadError 
    require 'haml' # From gem 
end 

我需要解決這個錯誤,請幫助。

以下是錯誤追蹤。

/usr/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:31:in gem_original_require': no such file to load -- haml (MissingSourceFile) from /usr/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:31:in需要」 從/usr/lib/ruby/gems/1.8/gems/activesupport-2.3.2/ lib/active_support/dependencies.rb:156:在require' from /usr/lib/ruby/gems/1.8/gems/activesupport-2.3.2/lib/active_support/dependencies.rb:521:in new_constants_in' from /usr/lib/ruby/gems/1.8/gems/activesupport-2.3.2/lib/active_support/dependencies.rb:156:in require' from /home/techvant/rails_app/techease/vendor/plugins/haml/init.rb:4:in evaluate_init_rb' from /usr/lib/ruby/gems/1.8/gems/rails-2.3.2/lib/rails/plugin.rb:146:in evaluate_init_rb' from /usr/lib/ruby/gems/1.8/gems/activesupport-2.3.2/lib/active_support/core_ext/kernel/reporting.rb:11:in silence_warnings' from /usr/lib/ruby/gems/1.8/gems/rails -2.3.2/lib/rails/plugin.rb:142:在evaluate_init_rb' from /usr/lib/ruby/gems/1.8/gems/rails-2.3.2/lib/rails/plugin.rb:48:in中加載' from /home/techvant/rails_app/techease/config/../ vendor/plugins/siteninja/engines/lib/engines/plugin.rb:77:在load' from /usr/lib/ruby/gems/1.8/gems/rails-2.3.2/lib/rails/plugin/loader.rb:38:in load_plugins' from /usr/lib/ruby/gems/1.8/gems/rails-2.3.2/lib/rails/plugin/loader .rb:37:each' from /usr/lib/ruby/gems/1.8/gems/rails-2.3.2/lib/rails/plugin/loader.rb:37:in load_plugins' from /usr/lib/ruby/gems/1.8/gems/rails-2.3.2/lib/initializer.rb:348:in load_plugins' from /usr/lib/ruby/gems/1.8/gems/rails-2.3.2/lib/initializer.rb:163:in進程' from/usr/lib/ruby /gems/1.8/gems/rails-2.3.2/lib/initializer.rb:113:in send' from /usr/lib/ruby/gems/1.8/gems/rails-2.3.2/lib/initializer.rb:113:in從/home/techvant/rails_app/techease/config/environment.rb:9運行' / from/usr/lib/ruby/site_ruby/1.8/ruby​​gems/custom_require.rb:31:gem_original_require' from /usr/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:31:in需要' from /usr/lib/ruby/gems/1.8/gems/activesupport-2.3.2/lib/active_support/dependencies.rb:156:in require' from /usr/lib/ruby/gems/1.8/gems/activesupport-2.3.2/lib/active_support/dependencies.rb:521:in new_constants_in' from/usr/lib/ruby​​/ge ms/1.8/gems/activesupport-2.3.2/lib/active_support/dependencies.rb:156:在require' from /usr/lib/ruby/gems/1.8/gems/rails-2.3.2/lib/commands/server.rb:84 from /usr/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:31:in gem_original_require' from /usr/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:31:in`require 「 從腳本/服務器:3

+0

通過刪除'''是否解決任何問題? – 2010-02-01 15:33:30

+0

您使用的是哪種版本的導軌? – wesgarrison 2010-02-01 19:11:50

+0

我有導軌版本2.3.5 – 2010-02-02 07:14:00

回答

0

您可以嘗試解開這些寶石,以便它們位於您的Rails應用程序目錄中,這將根據您系統中的本地寶石消除您的Rails應用程序。乾杯!

0

嘗試:

寶石更新軌

...在服務器上,而不是你的開發機器

1

由於haml是一個寶石,我會把它放在環境中。RB:

config.gem 'haml' 

然後,解壓縮,並把它添加到回購:

rake gems:install 
rake gems:unpack 

最後,刪除你已經得到了HAML插件引用。

0

我對這個問題也有很多麻煩。以下是我最終解決它的步驟。

首先,安裝寶石。

config.gem 'haml' 

在你的environment.rb文件中。我實際上不得不將它放在我的environments/development.rb和environments/production.rb(等)中,因爲它抱怨不知道rails_env。這不是最佳的,但它工作。 然後運行

rake gems:install 

然後

mkdir -p /vendor/plugins/haml 
cp vendor/gems/haml-2.2.0/init.rb /vendor/plugins/haml/init.rb 

然後重新啓動服務器的軌道。

相關問題