Kon Gemfile niet vinden

Ik ben zeker geen Ruby-ontwikkelaar, maar ik heb een applicatie op mijn server die Ruby, Gems en Bundler gebruikt. Ik probeer een andere Ruby te installeren onder een ander gebruikersaccount maar op dezelfde VPS. Als ik ga rennen

bundle install

Ik krijg de volgende foutmelding:

Kon Gemfile niet vinden

Ik zou de inhoud van de ./bundle-map kunnen verwijderen zodat alle edelstenen opnieuw worden opgehaald om de fout te verhelpen, maar heeft dit gevolgen voor mijn andere toepassing die dezelfde edelstenen en bundels gebruikt? Ik wil niet het risico lopen de andere app uit de lucht te halen.


Antwoord 1, autoriteit 100%

Je hebt geen Gemfilein een map waarin je dat commando uitvoert.
Gemfileis een bestand met je gem-instellingen voor een huidigprogramma.


Antwoord 2, autoriteit 48%

Zorg ervoor dat u zich in de projectdirectory bevindt voordat u bundle installuitvoert. Bijvoorbeeld, na het uitvoeren van rails new myproject, wil je cd myprojectvoordat je bundle installuitvoert.


Antwoord 3, autoriteit 4%

Ik had hetzelfde probleem en heb het opgelost door een andere map te gebruiken.

bash-4.2$ bundelinstallatie
Kon Gemfile niet vinden
bash-4.2$ pwd
/home/amit/redmine/redmine-2.2.2-0/apps/redmine
bash-4.2$ cd htdocs/
bash-4.2$ ls
app config db extra Gemfile lib plug-ins Rakefile script tmp
bin config.ru doc-bestanden Gemfile.lock log openbaar README.rdoc test leverancier
bash-4.2$ cd-plug-ins/
bash-4.2$ bundel installeren
Hark gebruiken (0.9.2.2)
i18n (0.6.0) gebruiken
Multi_json (1.3.6) gebruiken
Activesupport gebruiken (3.2.11)
Builder gebruiken (3.0.0)
Activemodel gebruiken (3.2.11)
Erubis gebruiken (2.7.0)
Reis gebruiken (1.0.4)
Rek gebruiken (1.4.1)
Rack-cache gebruiken (1.2)
Rack-test gebruiken (0.6.1)
Wandeling gebruiken (1.2.1)
Kantel gebruiken (1.3.3)
Tandwielen gebruiken (2.2.1)
Actionpack gebruiken (3.2.11)
Mime-types gebruiken (1.19)
Polyglot gebruiken (0.3.3)
Treetop gebruiken (1.4.10)
Mail gebruiken (2.4.4)
Actionmailer gebruiken (3.2.11)
Arel gebruiken (3.0.2)
tzinfo gebruiken (0.3.33)
Activerecord gebruiken (3.2.11)
Activeresource gebruiken (3.2.11)
Coderay gebruiken (1.0.6)
Rack-ssl gebruiken (1.3.2)
Json gebruiken (1.7.5)
rdoc gebruiken (3.12)
Thor gebruiken (0.15.4)
Railties gebruiken (3.2.11)
JQuery-rails gebruiken (2.0.3)
Mysql2 gebruiken (0.3.11)
Net-ldap gebruiken (0.3.1)
Ruby-openid gebruiken (2.1.8)
Rack-openid gebruiken (1.3.1)
Bundelfunctie gebruiken (1.2.3)
Gebruik van rails (3.2.11)
rmagick gebruiken (2.13.1)
Jouw bundel i

Antwoord 4, autoriteit 2%

Ik heb een soortgelijk probleem opgelost door gewoon een back-up te maken van de projectdirectory, dan cd terug te gaan naar de projectdirectory en de installatie te bundelen.


Antwoord 5

Hier is iets wat je zou kunnen proberen.

Voeg dit toe aan alle configuratiebestanden die u gebruikt om uw app uit te voeren.

ENV['BUNDLE_GEMFILE'] ||= File.expand_path('../../Gemfile', __FILE__)
require 'bundler/setup' # Set up gems listed in the Gemfile.
Bundler.require(:default)

Rails en andere op racks gebaseerde apps gebruiken dit schema. Het komt soms voor dat u dingen probeert uit te voeren die enkele mappen dieper zijn dan uw root waar uw Gemfile zich normaal bevindt.
Natuurlijk heb je dit probleem voor nu opgelost, maar af en toe komen we allemaal in de problemen met het vinden van de Gemfile. Ik vind het soms leuk als je al je edelstenen ook in de .bundle-directory kunt hebben.
Het kan nooit kwaad om dit siteadres onder je kussen te houden.
http://bundler.io/


Antwoord 6

Is heel eenvoudig. als er staat ‘Kon Gemfile niet vinden’, betekent dit dat in de map waarin u zich momenteel bevindt of in een map waarin u zich bevindt, er geen bestand is met de naam GemFile. Geef daarom in uw opdrachtprompt een expliciet of volledig pad naar de map daar waar de bestandsnaam “Gemfile” bijvoorbeeld cd C:\Users\Administrator\Desktop\RubyProject\demo is.

Het zal zeker zo worden opgelost.

Other episodes