私が書いた特製の宝石を構築しようとしていますが、これはclient_package
と呼ばれています。Gemを取得しようとしています:: InvalidSpecificationException: "[...]はファイルではありません"
client_package
Gemfile
Gemfile.lock
client_package.gemspec
Rakefile
Readme.md
.gitignore
.git
...git files...
lib
client_package.rb
client_package
version.rb
api.rb
...more...
そして、私のclient_package.gemspec
は、次のようになります:
私のディレクトリ構造は次のようになります
# encoding: UTF-8
require File.expand_path('../lib/client_package/version', __FILE__)
Gem::Specification.new do |s|
s.name = 'client_package'
s.version = ClientPackage::VERSION
s.platform = Gem::Platform::RUBY
s.files = `git ls-files`.split('\n')
s.executables = `git ls-files -- bin/*`.split('\n').map{ |f| File.basename(f) }
s.require_paths = ['lib']
# also have s.authors, s.email, s.homepage, s.summary, s.description
s.add_dependency 'httparty'
s.add_dependency 'json'
end
そして、すべての私のファイルがコミットされ、gitの状態はきれいです。
トップclient_package
ディレクトリ内から、私はgem build client_package.gemspec
を実行すると、このエラーが表示されます。それらは確かに私には、ファイルのように見えるので、
ERROR: While executing gem ... (Gem::InvalidSpecificationException)
[".gitignore
Gemfile
Rakefile
Readme.md
client_package.gemspec
lib/client_package.rb
lib/client_package/api.rb
lib/client_package/version.rb
lib/client_package/...more...
"] are not files
これは、私には不可解です。とにかく、私は、これらのファイルを見ていない場合、いくつかのパスの問題があると思って、ちょうどいくつかの試行錯誤をして、私はディレクトリ(上のレベルclient_package
)の上に移動してgem build client_package/client_package.gemspec
を実行するとは最初に作業し、ファイルclient_package-1.0.0.gem
を作成します。しかし何かはまだ間違っています。私はgem install client_package-1.0.0.gem
と一緒にその宝石をインストールしても動作するようです。しかし、これは:
require 'rubygems'
require 'client_package'
戻り値LoadError: no such file to load -- client_package
です。
小さいながらも重要なものを逃してしまわなければならないような気がします。何か案は?
私はばかです。ありがとう! –
私と私の中毒は一重引用符=)です。 –