Często widzę w dokumentacji w Internecie "umieść to w Gemfile". Nie wiem gdzie i czym jest ta "Gemfile". Jeśli zainstaluję klejnot, to go zainstalowałem. Kto potrzebuje, niż "Gemfile"? Gdzie lub czym jest Gemfile i dlaczego jest używany?Gdzie jest "Gemfile" w Ruby?
Odpowiedz
Gemfile
jest w projekcie Rails, Ruby uruchomić gem environment
, aby dowiedzieć się o swoim środowisku gem:
RubyGems Environment:
- RUBYGEMS VERSION: 2.4.8
- RUBY VERSION: 2.2.1 (2015-02-26 patchlevel 85) [i686-linux]
- INSTALLATION DIRECTORY: /home/gagan/.rvm/gems/ruby-2.2.1
- RUBY EXECUTABLE: /home/gagan/.rvm/rubies/ruby-2.2.1/bin/ruby
- EXECUTABLE DIRECTORY: /home/gagan/.rvm/gems/ruby-2.2.1/bin
- SPEC CACHE DIRECTORY: /home/gagan/.gem/specs
- SYSTEM CONFIGURATION DIRECTORY: /home/gagan/.rvm/rubies/ruby-2.2.1/etc
- RUBYGEMS PLATFORMS:
- ruby
- x86-linux
- GEM PATHS:
- /home/gagan/.rvm/gems/ruby-2.2.1
- /home/gagan/.rvm/gems/[email protected]
- GEM CONFIGURATION:
- :update_sources => true
- :verbose => true
- :backtrace => false
- :bulk_threshold => 1000
- REMOTE SOURCES:
- https://rubygems.org/
- SHELL PATH:
- /home/gagan/.rvm/gems/ruby-2.2.1/bin
- /home/gagan/.rvm/gems/[email protected]/bin
- /home/gagan/.rvm/rubies/ruby-2.2.1/bin
- /usr/local/heroku/bin
- /usr/lib/lightdm/lightdm
- /usr/local/sbin
- /usr/local/bin
- /usr/sbin
- /usr/bin
- /sbin
- /bin
- /usr/games
- /home/gagan/.rvm/bin
- /home/gagan/.rvm/bin
zauważy dwie sekcje:
- Katalog instalacyjny
- GEM DROGACH
Gemfile to plik, który musi znajdować się w katalogu głównym projektu rails. Służy do opisywania zależności gem w programach Ruby.
Pierwszą rzeczą w twoim gemfile jest źródło, w którym możesz powiedzieć Gemfile, gdzie szukać klejnotów.
Źródło może być wywołane jako blok i możesz mieć wiele źródeł w swoim gemfile.
source "https://my_awesome_source.com" do
gem "my_gem"
gem "my_other_gem"
end
Oto dokumentacja, gdzie można dowiedzieć się więcej o gemfile http://bundler.io/gemfile.html
Gemfile jest wszędzie tam, gdzie chcesz go mieć - zazwyczaj w głównym katalogu projektu i nazwa pliku jest Gemfile
.
Jest to wygodne, ponieważ pozwala używać Bundler do zarządzania klejnotami i wersjami każdego projektu.
Jeśli nie korzystasz z programu Bundler (który powinieneś!), Możesz po prostu zainstalować wszystkie klejnoty, z którymi się spotykasz, podając gem install X
i zignorować instrukcje dotyczące dodawania linii do pliku Gemfile.
Czytaj więcej na ten temat tutaj:
ok, ok dzięki. Ponieważ mam problem: jeśli zainstaluję klejnot "baterię", to nie działa, jeśli go wymagam i wykonuję go zgodnie z instrukcjami . Ponieważ pod stanowiskiem instruktorów "Dodaj to do Gemfile: klej" bateria "", "następnie uruchom: pakiet". Co powinienem zrobić ? – GluecklichesHuhn
@ GluecklichesHuhn Proszę spojrzeć na sekcję "Pierwsze kroki" w poniższym linku. Nie mogłem tego lepiej wytłumaczyć! http://bundler.io/ – Weston
dziękuję. naprawdę pomóż mi zrozumieć ruby. Jestem nowicjuszem – arced
Nie tylko w Rails, w żadnych klejnotów Ruby. –