簡體   English   中英

加載某種互斥鎖時出錯

[英]rake errors while loading some kind of mutex

我剛剛為我的網站安裝了facebook connect,但是沒有對導致錯誤的文件進行過編輯,我得到了這個:

rake aborted!
uninitialized constant ActiveSupport::Dependencies::Mutex
/var/www/###/Rakefile:10:in `require'
(See full trace by running task with --trace)

在我的Rakefile的第10行,您會發現:

require 'tasks/rails'

我沒有編輯'tasks / rails'......這個Mutex是什么?為什么它現在會拋出這個錯誤?

可能會拋出錯誤,因為模塊ActiveSupport :: Dependencies中的某些代碼想要使用Mutex類,但由於某種原因,該類無法自動加載。

有時問題不在於代碼,而是在環境中 - 就像沖突的寶石一樣,我想問題是你剛剛安裝好的facebook連接會搞亂你系統中的某些部分

它可以幫助查看rake some:task --trace輸出,以確定哪個文件導致問題 - 也許尋找對facebook連接庫的調用,然后嘗試使用該文件 - 注釋掉可能導致你的行問題,確定必須做什么。

為了進一步幫助您,需要堆棧跟蹤,項目中使用的寶石列表及其版本,以及安裝facebook connect時所做的步驟

如果無法從rails 2.3.4升級,請在boot.rb初始化之前在Rakefile中使用'thread'。

您可能還需要在config / environment.rb和腳本/服務器中要求它。

看起來像這樣:

require 'thread'
require File.join(File.dirname(__FILE__), 'boot')

您已安裝Rails 3.0.5,但正在嘗試使用2.3.4。 雖然,如果你另外安裝了2.3.4,它們不應該發生沖突,我建議你看一下使用RVM進行開發來創建隔離的開發環境(稱為gemsets)。

此外,您使用的是Rails 2.3.4,它與Rubygems 1.6不兼容。 我強烈建議您將rails升級到最新的2.3版本(目前為2.3.11),因為它包含許多錯誤和安全修復程序,以及與最新的Rubygems的兼容性。 或者你可以將Rubygems降級到1.3.7,但我建議升級Rails,因為它是一個更好的長期解決方案,包括許多重要的安全修復程序。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM