2013-03-09 11 views
9

Właśnie stworzył klejnot testowego przy użyciu wiązki i utworzony plik .gem z nieodgadnionym zawartości więc zastanawiałemCo zawiera plik .gem? W jaki sposób jest używany przez framework Rails?

  1. co to .gem plik zawiera? czy to są dane binarne? jak kiedyś sądziłem, że pliki .gem zawierają funkcje pakowania ruby ​​

  2. jak ten plik .gem jest używany przez framework railsowy? ponieważ nie wygląda moduł

Dzięki

Odpowiedz

5

Możesz zobaczyć, co się dzieje, jeśli zaznaczysz plik w systemie plików.

W środowisku POSIX można sprawdzić plik za pomocą polecenia Plik:

$: file bundler-1.3.0.gem   
bundler-1.3.0.gem: POSIX tar archive 

Jak widać jest to archiwum tar. Jest to plik binarny, który jest pakowany i zarządzany przez narzędzie gem.

Jest "binarny", więc nie zobaczysz go tak, jak można się było spodziewać.

Masz jednak rację, i możesz nadal myśleć, że zawiera on pakowane "funkcje" ruby.

Wszystko, co kazałeś mu zawrzeć za pośrednictwem twojego gemspec (jakkolwiek to załączyłeś) jest tam.

Jeśli chodzi o to, w jaki sposób Rails używa gemfile, jest on ogólnie używany przez zainstalowanie gema w systemie, ale jakkolwiek jest to zrobione, jest częściowo zależne od decyzji dotyczących środowiska.

5

Plik gem to tylko archiwum tar zawierające (przynajmniej) do gemspec pliku. Zwykle będą również pliki źródłowe z ruby ​​i prawdopodobnie kod natywny lub zasoby pomocnicze (na przykład klejnot przeznaczony do użycia z szynami może również pakować niektóre javascript). Powszechne jest również dołączanie README, CHANGELOG i innych dokumentów.

+0

Dzięki, jak mogę zobaczyć/otworzyć plik gem? – iCyborg

+0

Po prostu udawaj, że jest to normalny plik tar - tar -xvf foo.gem –

Powiązane problemy