質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
Ruby

Rubyはプログラミング言語のひとつで、オープンソース、オブジェクト指向のプログラミング開発に対応しています。

Q&A

解決済

2回答

1939閲覧

Rubyにて requireでファイルの参照をすると、LoadErrorになる

yg.ruby

総合スコア11

Ruby

Rubyはプログラミング言語のひとつで、オープンソース、オブジェクト指向のプログラミング開発に対応しています。

0グッド

0クリップ

投稿2019/05/07 15:50

前提・実現したいこと

プログラミング初心者で、Rubyの勉強をしています。
プログラム本体とテストコードを分離・引用する段階でつまずいています。

ディレクトリの構成は
studyというファイルに、libファイル(中にcode.rbがある)と、testファイル(中にtest.rbがある)という感じです。

code.rbは

puts "Hello"

test.rbは

reqire './lib/code.rb'

発生している問題・エラーメッセージ

コマンドプロンプトで、test.rbを実行しようとすると

cannoot load such file -- ./lib.code.rb (LoadError)

となってしまいます。

試したこと

カレントディレクトリについて調べなおし、requireメソッドの使い方も調べなおしましたが、ロードエラーが解消しません。
本で勉強していますが、本と同じディレクトリ構成・ファイル名でやっているんですが。

補足情報(FW/ツールのバージョンなど)

IDE atom
実行環境 コマンドプロンプト(ruby 2.5.5 p157)

どなたかご教授お願いします。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答2

0

ベストアンサー

カレントディレクトリと、ファイルのありかは無関係だと言うことは理解されていますか?

requireで相対パスを指定すると、カレントディレクトリを基準とした相対パスになります。

ファイルのありかからの相対パスを指定するときは、require_relativeを使います。

plain

1study ┬ lib ─ core.rb 2 └ test ─ test.rb

であるのなら、

Ruby

1require_relative "../lib/core.rb"

投稿2019/05/07 16:04

otn

総合スコア84499

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

yg.ruby

2019/05/08 16:41

カレントディレクトリとファイルのありかの関係性(この場合無関係性?)について調べなおして、理解することができました! また、require_relative・・・に直したところ、期待通りの動きをしてくれました。 これで勉強が次のステップに進めます! ありがとうございました!!
guest

0

/lib.code.rb

/lib/code.rb
の間違いでは?

エラーメッセージが
cannoot load such file -- ./lib.code.rb (LoadError)
となっているので。

投稿2019/05/07 16:01

katoy

総合スコア22324

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

yg.ruby

2019/05/08 16:45

迅速なご指摘ありがとうございました。 コマンドプロンプトからのコピーの仕方がわからず、手打ちでこちらにエラーコードを書きこんだので、打ち間違いをしてしまいました。 別の場所を直すことで問題解決することが出来ました。 今後はこのような紛らわしいミスはしないよう気を付けます。 ほんとうにすいませんでした。
katoy

2019/05/08 21:19

エラーメッセージ、ソースコードが正確でないと、適切な回答を得ることは難しいです。
yg.ruby

2019/05/09 14:10

気を付けます。ありがとうございました。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問