다른 파일이 필요합니다 main.rb
및 tester.rb
, 나는 각각 별도로 호출되어 별도로 실행되는 파일이 있습니다 required.rb
가 있습니다.필요한 파일의 파일 요구하기
required.rb
내에 모든 파일이 필요한 파일의 하위 디렉토리에 있어야합니다.
main.rb
lib/
required.rb
req_files/
req1.rb
req2.rb
req3.rb
tester/
tester.rb
필요한 파일을 가져 오는 코드는 다음과 같습니다 : 내가 본 제안 전략에
Dir[Dir.pwd + "/req_files/*.rb"].each do |file|
require file
end
, 그것은 Dir.pwd
또는 __FILE__
을 활용 수, 문맥에 적용되는 모든 것은 다음과 같이 보입니다 required.rb
의 위치는 처음부터 필요한 원본 파일의 컨텍스트입니다. 즉,이 두 파일을 모두 현재 설정과 별도로 요구할 수는 없습니다.
required.rb
에 상대적인 경로를 나타내는 방법이 있습니까?
EDIT :
그것의 아니지만, 그것은 다음과 같이 표현 될 수 있도록 Dir[Dir.pwd + "/req_files/*.rb"]
보다 구체적 Dir.pwd
원본 파일에 대하여 (주 또는 테스터)를 해결한다는 사실을 변경하지 않는다 require_relative해야 변화 때문에 또한 required.rb
이 main.rb
및 tester.rb
모두에서 이미 require_relative
을 통해 요구되는 점에 유의해야 두 항목에 대한 작업을
[Ruby에서 \ _relative와 require가 필요한 것의 차이점은 무엇입니까?] (https://stackoverflow.com/questions/3672586/what-is-the-difference-between-require-relative-and- require-in-ruby) –
@BradWerth : 실제로 _duplicate_는 아니지만. 이 질문에는'require_relative'에 대한 언급이 없기 때문입니다. –
더 나쁜 목표를 만들었던 더 나은 "중복"이있었습니다. 나는 그것을보고 있었는데 어떻게 https://stackoverflow.com/questions/4660142/what-is-a-nullreferenceexception-and-how-do-i-fix-it가 사용되는 것처럼 ... –