Erstellen Sie eine Ruby-gem // 'require' error: cannot load such file (LoadError)
Ich versuche, meine erste Ruby-gem und ich bekomme ein LoadError auf der ersten 'require' - Linie.
In meinem Edelstein-Ordner habe ich 3 Klassen inklusive " - version.rb' (wo die LoadError Auftritt)
version.rb
module OptimalBankroll
VERSION = "0.0.1"
end
numerisch.rb ( i ändern Sie die Klasse numeric, so dass ein beliebiger integer - /float verwendet wird, auf einen Prozentsatz geändert:
module OptimalBankroll
class Numeric
def to_percentage
self.to_f / 100
end
end
end
bet_size.rb ( Ex: BetSize.neue.Höhe(1000,1), gibt ==> 10
module OptimalBankroll
class BetSize
def amount(bankroll, unit)
bankroll.round(2) * unit.round(2).to_percentage
end
end
end
optimal_bankroll.rb ( hier ist, wo bekomme ich die LoadError )
require "optimal_bankroll/version"
require "optimal_bankroll/numeric"
require "optimal_bankroll/bet_size"
module OptimalBankroll
end
p OptimalBankroll::BetSize.new.amount(1000, 0.5)
rubygems/core_ext/kernel_require.rb:53:in `require': cannotload such file --
optimal_bankroll/version (LoadError)
Ich bin ganz grün mit dem erstellen von Ruby Edelsteine, so dass jeder Rat wäre hilfreich, danke!
Du musst angemeldet sein, um einen Kommentar abzugeben.
Wenn der string, den Sie übergeben, in
require
ist nicht ein absoluter Pfad, es wird nur ein check für die Datei in den angegebenen Verzeichnissen in$LOAD_PATH
. Normalerweise sind diese Dateien befinden sich inlib/
wird Hinzugefügt, um$LOAD_PATH
in Ihrem gemspec. Stellen Sie sicher, dass Sie diese Zeilen in Ihrer gemspec:Also dann für Ihre benötigen, um zu arbeiten, müssen Sie diese Ordner-Struktur:
Es ist üblich, verwenden Sie die directory-Schema, das oben beschrieben und ändern
$LOAD_PATH
zu passen, wo Sie platziert haben, werden Ihre Dateien, anstatt Umgekehrt, sollten vermieden werden.Hier ist eine Anleitung, wie man einen Edelstein mit bundler. Sie finden es vielleicht hilfreich, wenn Sie gerade die ersten Schritte mit Edelstein-Entwicklung. http://bundler.io/v1.6/rubygems.html
$LOAD_PATH
in ein Juwel. Die Punkt mit einem Paket-management-system wie RubyGems ist, dass es behandelt das einrichten der Umgebung für Sie!