我正在打包自己的gem,其中包含一個名爲Convert3D
的模塊和一個名爲ShapeSet
的類。Ruby看到名稱空間前綴不存在
當我嘗試從ShapeSet的initialize方法中調用Convert3D模塊的方法時,會發生以下錯誤。 Convert3D模塊已經被需要,並且該方法在調用ShapeSet.new的irb上下文中工作。
NameError: uninitialized constant ShapeSet::Convert3d
由於沒有提及「ShapeSet :: Convert3d」有史以來的任何地方,什麼是紅寶石在這裏做,什麼可能我是做錯了什麼造成的呢?
我使用馬茨的Ruby 1.9.3 OSX 10.8.2
你有沒有想過在你的問題中包含一個隱藏的模塊/類定義,以便人們不必猜測你的代碼是什麼樣的? – 2013-02-17 17:44:08
是的,但決定反對它,因爲我認爲通過描述關鍵點比通過複製我的代碼的簡化版本更清楚地傳達了相關細節。 – Nat 2013-02-17 17:49:45