Yerel bir mücevheri nasıl kurabilirim?


Yanıtlar:


288

Evet, yaptığınızda gem install, önce geçerli dizinde arama yapar , bu nedenle .gem dosyanız varsa, onu alır. Ben de kullanışlı bulabilirsiniz mücevher referans buldum :

gem install adlı gemiyi kuracaktır. Yerel bir yüklemeyi dener (yani geçerli dizindeki bir .gem dosyası) ve bu başarısız olursa, istediğiniz gem'in en son sürümünü indirmeye ve yüklemeye çalışır.


2
Bağlantı sonsuz yönlendirmelerle sona erer :(
Ain Tohvri

2
2019'da bunun benim için çalıştığını söylemek için kontrol
Charles Wood

1
Bir dosyam var Gemfileama bir .gemdosyam yok. Peki bu .gemdosya nedir? Ne içermeli? - Bekle - anlıyorum. Bir gem-name.gemdosya demek istiyorsun . Unix'te bir '.' İle başlayan dosyaya sahip olmanın oldukça normal olduğunu unutmayın. bu yüzden hecelemek daha iyidir.
Martin

2020'nin geleceğinden onaylayabilirim, bağlantı benim için çalışıyor. Uzak bir gelecekte çalışmazsa, Archive.org 19 Nisan 2020 anlık görüntüsü
Jed Burke

329

Ayrıca, gem install --local path_to_gem/filename.gem

Bu, ayrıldığınızda gerçekleşen olağan mücevher deposu taramasını atlayacaktır --local.

İle başka bir sihir bulabilirsiniz gem install --help.


Zip formatında rubygems gibi bir mücevher indiriyorum. Yani burada .gem dosyası yok. Bunu yerelden nasıl yüklerim? Teşekkür ederim.
Erran Morad

3
@BoratSagdiyev, bir zip dosyası bir mücevher değil. Çoğu zip dosyası gibi, onunla çok şey yapmadan önce onu açmanız gerekir. Bir mücevher içeriyorsa, çıkarılan .gem dosyasındaki gem kurulumunu kullanabilirsiniz. Gem biçiminin iç hatırlamıyorum; sadece özel bir başlığa sahip bir zip dosyası olabilir, ancak rubygems zip dosyalarını bu şekilde tanımıyor olabilir.
15:15, JasonTrue

62

gem dosyanızın tam adını da kullanabilirsiniz:

gem install /full/path/to/your.gem

bu da işe yarıyor - muhtemelen en kolay yol


38

Mücevherlerinizi bundler ile oluşturursanız:

# do this in the proper directory
bundle gem foobar

Bunları yazıldıktan sonra tırmıkla kurabilirsiniz:

# cd into your gem directory
rake install

Muhtemelen, indirdiğiniz mücevher de bilir rake install.


3
bu en modern cevap gibi görünüyor. kabul edilen cevap 8 yıl önce
sixty4bit

14

github veya diğer scm host sitesinden proje dosyasını indirirseniz, ilk önce projeyi oluşturmak için gem build komutunu kullanın, böylece geçerli dizinde whatever.gem dosyasını alabilirsiniz. Sonra gem yükleyin!


13

Yerel olarak değiştirilmiş bir mücevher çatalı üzerinde çalışmak istiyorsanız, bunu yapmanın en iyi yolu

gem 'pry', path: './pry'

bir Gemfile.

... ./prydeponuzun klonu nerede olurdu. Sadece bir bundle installkez çalıştırın ve yaptığınız mücevher kaynaklarındaki değişiklikler hemen yansıtılır. İle gem install pry/pry.gem, kaynaklar hala içine taşınır GEM_PATHve her zaman ikisini de çalıştırmak bundle gem pryve gem updatetest etmek zorunda kalırsınız .



0

Bu benim KURU kurulumum:

  1. Önbellek dizininde zaten yüklü mücevherlerin bulunduğu bir bilgisayara bakın (varsayılan olarak: [Ruby Installation version]/lib/ruby/gems/[Ruby version]/cache )
  2. Tüm "kopyala *.gems(varsayılan olarak ilk adımın aynı hamisi yolunu: Kendi mücevher önbellek yerinde taşlar olmadan bir bilgisayara dosya" [Ruby Installation version]/lib/ruby/gems/[Ruby version]/cache)
  3. Konsolda taşlar önbelleğinde (cd [Ruby Installation version]/lib/ruby/gems/[Ruby version]/cache) bulun ve ateş edin gem install anygemwithdependencieshere(örnek cucumber-2.99.0)

KURU çünkü herhangi bir mücevher yükledikten sonra, varsayılan olarak rubygems mücevher dosyasını önbellek mücevher dizinine koydu ve yinelenen thats dosyalarını anlamıyor, her iki bilgisayarın da aynı sürümlere sahip olmasını istiyorsanız (veya paranoyak güvenlik kuralları:

Düzenleme: Yakut veya rubygems bazı sürümlerinde, işe yaramıyor ve yangın uyarıları veya hata yok, başka bir yerde taşlar koyabilirsiniz ama DRY alamazsınız, diğer alternatif başlatma entegre komutunu kullanıyor gem serverve gem kaynaklarında localhost url'sini ekliyor, daha fazla bilgi: https://guides.rubygems.org/run-your-own-gem-server/


0

Taşları https://rubygems.org/gems/ adresinden indirebilir veya paket ve raf aracılığıyla yerel taşlarınızı inşa edebilirsiniz.

Örneğin:

  • mücevher adınız
  • komisyon yüklemek

Gerçek taşları takmadan önce bağımlılıkları kurmaya dikkat edin.

  • gem install --local /pathToFolder/xxx-2.6.1.gem

Not: Aynı makinede akıcı td maddesi ve yakut kullanılıyorsa. Lütfen td-agent'ın td-agent-gem komutunu kullandığınızdan emin olun. td-agent'ın kendi Ruby'si var.

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.