バンドルを使用してテストgemを作成したところ、読み取り不可能なコンテンツを含む.gemファイルが作成されたため、疑問に思いました。
その.gemファイルには何が含まれていますか?これはバイナリデータですか?.gemファイルにはパッケージ化されたruby関数が含まれていると思っていたので
この.gemファイルはRailsフレームワークでどのように使用されていますか?モジュールのようには見えないので
ありがとう
バンドルを使用してテストgemを作成したところ、読み取り不可能なコンテンツを含む.gemファイルが作成されたため、疑問に思いました。
その.gemファイルには何が含まれていますか?これはバイナリデータですか?.gemファイルにはパッケージ化されたruby関数が含まれていると思っていたので
この.gemファイルはRailsフレームワークでどのように使用されていますか?モジュールのようには見えないので
ありがとう
ファイルシステム上のファイルをチェックすると、何が起こっているかを確認できます。
Posix環境では、fileコマンドを使用してファイルを確認できます。
$: file bundler-1.3.0.gem
bundler-1.3.0.gem: POSIX tar archive
ご覧のとおり、tarアーカイブです。つまり、これはバイナリファイルであり、ツールによってパッケージ化および管理されgem
ます。
これは「バイナリ」であるため、予想どおりに表示されません。
あなたは正しいです、そしてあなたはそれがパッケージ化されたルビーの「関数」を含んでいると考え続けることができます。
gemspecを介して含めるように指示したものはすべて(ただし、それを含めた場合)そこにあります。
Railsがgemfileをどのように使用するかに関しては、一般的にgemをシステムにインストールすることによって使用されますが、それがどのように行われるかは、環境の決定に部分的に依存します。
A gem file is just a tar archive containing (at least) a gemspec file. There will also usually be ruby source files and possibly native code or supporting assets (for example a gem designed to be used with rails might also package some javascript). It is also common to include a README, CHANGELOG and other documentation.