2011-09-09 10 views
1

utility.rb이라는 파일에 메서드를 정의했습니다. main.rb이라는 또 다른 파일에서이 메서드를 호출하려고했습니다. main.rb에서 나는 그 파일을 utility이라고 요구하면서 require을 만들었지 만 main.rb을 실행했을 때 그 특정 방법과 관련된 정의되지 않은 메서드 오류가 발생했습니다. utility.rbmain.rb은 같은 디렉토리에 있습니다. 어떤 생각?특정 메서드와 관련된 정의되지 않은 메서드 오류

+1

당신이 – mportiz08

+0

mportiz08 @ 내가 D 다른 "필요"할 수있는 경우는 두 파일의 코드를 게시하는 것이 도움이 될 것입니다 파일도 잘 작동합니다. 이 다른 파일과 utility.rb의 차이점은 utility.rb 자체가 실행 가능하고 다른 프로그램은 실행 가능하지 않은 것입니다 (즉, 메소드의 정의 만 있고 호출이 없음). 오류가 발생합니까? –

+0

확실하지 않음 - 일부 컨텍스트 (실제 사용중인 루비 버전)의 실제 파일을 보는 것이 좋을 것입니다. – mportiz08

답변

2

설치된 루비 라이브러리에 utility.rb 파일이 있습니다. 이 파일은 사용자의 파일 대신로드됩니다. 파일에 대한 더 구체적인 이름을 선택하거나 lib 디렉토리 검색 경로의 시작 부분에 .을 추가

$:.unshift('.') 
관련 문제