Tôi muốn tạo một ứng dụng Ruby mới, vì vậy tôi quyết định sử dụng bundle gem foo
để làm điều đó. Điều này đã cho tôi toàn bộ:Đá quý Ruby tươi từ Bundler - không thể tải tệp version.rb của tôi?
lib/
foo/
version.rb
foo.rb
Gemfile
Rakefile
foo.gemspec
README.md
cấu trúc. Bây giờ khi tôi chạy ruby foo.rb
, tôi nhận được:
`require': cannot load such file -- foo/version (LoadError)
foo.rb chỉ là mặc định:
require 'foo/version'
module Foo
end
thể đá quý không được chạy trên riêng của họ? Tôi hy vọng tôi không phải bao gồm đá quý của tôi vào một ứng dụng mẫu chỉ để kiểm tra nó ra?
Dường như tôi không chạy thư mục nào. Ngoài ra, không phải gemspec bao gồm $ LOAD_PATH? –
gemspec thường làm 'unshift' thư mục lib vào nó, nhưng nếu bạn muốn chạy bất kỳ mã nào, bạn sẽ phải tự thêm thư mục lib. Một số đá quý/utils (không thể nghĩ ra một tên tốt) như RSpec sẽ thêm lib và spec vào đường dẫn tải cho bạn. –