1

次の問題があります。

私のルビープロジェクトの構造: Ruby_Source\ file1.rb file2.rb file3.rb

file1.rb では、require 'file2' require 'file3'

Ruby_Source から file1.rb を実行しても、エラーは発生しません。

しかし、別のシステムの場所から同じものを実行すると、たとえば(c :)

エラーはロードエラーです。

誰か助けてくれませんか?

4

2 に答える 2

3

使用したい場合がありますrequire_relative

require_relative は、require_relative ステートメントを含むファイルに関連するファイルをロードできるようにすることで、組み込みメソッドの require を補完します。

さらなる議論を参照してください:

Rubyのrequire_relativeとrequireの違いは何ですか?

また、Ruby 1.8 を実行している場合:

Ruby: require と require_relative - Ruby <1.9.2 と >=1.9.2 の両方で実行する回避策のベスト プラクティス

于 2012-09-04T14:44:02.010 に答える
0

これを試して:

require_relative 'file2'

Ruby 1.9.x で。file2のディレクトリで検索しfile1ます。

古いバージョンでは、次のようなことを試すことができます。

$: << File.dirname($0) 

これにより、現在のプログラムのパスがrequire-search パスに追加されます。

于 2012-09-04T14:43:40.297 に答える