Sizning hisob qaydnomangizga RubyGems tizimiga o'rnatib bo'lmaydi

Men buyruqni bajaraman

bundle install

loyiha papkasida. Ba'zi loyiha papkasida xato yuzaga keladi va boshqa loyihalarda papkalarga xato keltirib chiqarmaydi. Xato:

Sizning foydalanuvchi hisobingiz RubyGems tizimiga o'rnatishga ruxsat berilmagan

Men buni tavsiya etilgan tavsiyalarga rioya qilish orqali aniqlash mumkinligini bilaman:

  paketini o'rnatish - yo'l sotuvchisi/paketini
 
-ni tanlang

Mening savolim nima uchun xatti-harakatlarga ziddir?

11
Bundan tashqari, Travis CI to'liq bundle install --jobs = 3 --retry = 3 buyrug'ini ishga tushiradi, lekin aslida docs.travis-ci.com/user/languages/ruby/#Default -Test-skript
qo'shib qo'ydi muallif Full Decent, manba

6 javoblar

Mening holimda xato xabari nimani taklif qilayotganini hal qildim:

Your user account isn't allowed to install to the system RubyGems.
  You can cancel this installation and run:

      bundle install --path vendor/bundle

  to install the gems into ./vendor/bundle/

Shunday qilib, o'rniga:

bundle install

Men yugurdim:

bundle install --path vendor/bundle

Bu bu odam a>.

Ushbu echimning salbiy tomoni, mavjud papkada vendor papkasini yaratadi va uni .gitignore ga qo'shish mumkin, agar u ilovani Git orqali tarqatish bo'lsa.

5
qo'shib qo'ydi
Jekyll static veb-saytida sotuvchi kodini qo'shish uchun istisno qiling _config.yml da joylashgan sozlamalari. Qo'shimcha ma'lumot uchun: jekyllrb.com/docs/troubleshooting/#configuration-problems
qo'shib qo'ydi muallif Antonio Vinicius Menezes Medei, manba

Usually if you're using RVM, rbenv or chruby to install Ruby, all the gems will be installed in your home folder under ~/.rbenv/ruby-version/...

Agar ruby sistemangizni (asl qiymati sifatida o'rnatilgandan) foydalansangiz, unda toshlar siz bilan birga sudo holda kirish imkoniga ega bo'lmagan joyda o'rnatiladi.

Tahminimcha versiya boshqaruvchisi ruby tizimiga mos emas, biroq ba'zi loyihalaringizda sizda mavjud bo'lgan Rubyning boshqa versiyasidan foydalanishni bildiradigan .ruby-version fayli mavjud.

4
qo'shib qo'ydi

O'chir

sudo mv ~/.bundle /tmp

Qayta urinib ko'ring

bundle install
3
qo'shib qo'ydi
Bu savolga javob bermaydi. Muallifni tushuntirishni tanqid qilish yoki tushuntirishni so'rash uchun, ularning maqomidan pastda sharh qoldiring. - Ko'rib chiqishdan
qo'shib qo'ydi muallif ADreNaLiNe-DJ, manba

Yaxshi rbenv tuzatish

  • sudo-ni ishlatmaslik.
  • Ta'minlovchiga/paketiga ulanishni taqiqlaydi

The problem, at least for me, was that bundler itself wasn't installed in my rbenv ruby version. Even though bundler existed and seemed usable... except the permissions error.

Haqiqiy buyruq satrida o'zimga toshlarni o'rnatib, xato xabari topolmasligim kerak edi. Muammoni doimiy ravishda tuzatishga qaror qilmaguncha, bu ishni bir muncha vaqt uchun bajarganman.

Buni tuzatish uchun men qildim:

rbenv local 2.5.0 # Make sure I'm using a local version that exists
gem list | grep bundler # Note no output! Need to fix that!
gem install bundler
rbenv rehash
bundle (within my project that has a Gem file)
1
qo'shib qo'ydi

Mening holimda mavjud bo'lgan $ BUNDLE_PATH kodi bor edi.

Your user account isn't allowed to install to the system RubyGems
bundle install --path vendor/bundle
1
qo'shib qo'ydi

RVM dan foydalanish:

$ HOME katalogida yagona foydalanuvchi uchun ( standart foydalanuvchi/root emas foydalanuvchi ) rvm ni o'rnatishingiz kerak. /home/youruser/.rvm katalogiga ega bo'lmang.

rvm ni o'rnatish uchun quyidagilarni bajaring:

cd
command curl -sSL https://rvm.io/mpapis.asc | gpg2 --import -
\curl -sSL https://get.rvm.io | bash -s stable

Endi rvm o'rnatilgan bo'lishi kerak. Bundan so'ng so'ralganidek, rvm (yangilangan foydalanuvchi nomingiz bilan) yangilang:

source /home/---YOURUSERNAME---/.rvm/scripts/rvm

Sudo-ehtiyoj paketlarini o'rnatish bo'yicha ko'rsatmalarga yo'l qo'ymaslik uchun quyidagilarni bajaring:

rvm autolibs disable

Ruby-ni foydalanuvchi uchun faqat 2.5-versiyasida (yoki boshqa rvm ro'yxatida ma'lum ) rostlashingiz mumkin.

rvm install 2.5

as is specified on rvm site

Izoh:

Ehtimol, sudo dan foydalanib rvmni o'rnatishga urinib ko'ring va ehtimol bu ubuntu uchun paket ammo sudo ruxsatnomalari yo'q.

Ushbu chaqiriq sizning butun tizim uchun butun dunyo bo'ylab qimmatbaho toshlarni to'play olmaysiz, bu sizning xususiy uy kompyuteringiz uchun yaxshi bo'lishi mumkin, lekin sizning korporativ foydalanuvchi (mashina) uchun emas, ko'pincha boshqalar tomonidan boshqariladi.

Agar rvm sizning $ HOME tilingizga o'rnatilsa, unda odatdagidek gemplitlar to'planadilar.

Boshqa foydalanuvchilarda rvm $ HOME katalogiga o'rnatilganligi sababli xatti-harakatlar barqaror bo'lmasligi mumkin

1
qo'shib qo'ydi
Windows 10 do'konidan Ubuntu 18.04 da boshqa barcha buyruqlar oldidan sudo apt update va sudo apt upgrade va sudo apt o'rnatish gnupg2 bo'lishi mumkin
qo'shib qo'ydi muallif ToTenMilan, manba