जेमफाइल का पता नहीं चल सका


138

मैं निश्चित रूप से रूबी डेवलपर नहीं हूं, लेकिन मेरे पास रूबी, रत्न और बुंडलर का उपयोग करके मेरे सर्वर पर एक एप्लिकेशन है। मैं एक अलग उपयोगकर्ता खाते पर एक ही VPS पर एक और रूबी स्थापित करने की कोशिश कर रहा हूं। जब मैं दौड़ने जाता हूँ

bundle install

मुझे निम्नलिखित त्रुटि मिलती है:

जेमफाइल का पता नहीं चल सका

मैं ./bundle निर्देशिका की सामग्री को निकाल सकता / सकती हूं ताकि त्रुटि को दूर करने के लिए सभी रत्नों को पुनः प्राप्त किया जा सके, लेकिन क्या इससे अन्य रत्नों और बंडलर का उपयोग करने वाले मेरे अन्य अनुप्रयोग पर प्रभाव पड़ेगा? मैं दूसरे ऐप को डाउन करने का जोखिम नहीं उठाना चाहता।

जवाबों:


162

आपके पास Gemfileउस निर्देशिका में नहीं है जहाँ आप उस आदेश को चलाते हैं। एक वर्तमान प्रोग्राम के लिए Gemfileआपकी gemसेटिंग वाली फ़ाइल है ।


2
धन्यवाद। यह कुछ सरल था। मुझे बस एक समस्या थी क्योंकि मुझे कमांड चलाने के लिए एक व्यवस्थापक उपयोगकर्ता के रूप में लॉग इन करना था लेकिन एक अलग उपयोगकर्ता के तहत जेमफाइल एक निर्देशिका में था। मैं इसे हल करने में कामयाब रहा। धन्यवाद!
इयान

1
हां, आप सही हैं, यदि आप इस आदेश को Redmine स्थापित करने के लिए उपयोग करते हैं, तो आपको 'cd [redmine-directory]' चाहिए और फिर उस कमांड को निष्पादित करें।
टिम वोंग

80

सुनिश्चित करें कि आप चलने से पहले प्रोजेक्ट डायरेक्टरी में हैं bundle install। उदाहरण के लिए, दौड़ने के बाद rails new myproject, आप cd myprojectदौड़ने से पहले करना चाहेंगे bundle install


हां, यह वास्तव में समस्या थी और मैं इसे अंत में हल करने में कामयाब रहा। आपकी सहायता के लिए धन्यवाद।
इयान

6

मेरे पास एक ही समस्या थी और इसे एक अलग निर्देशिका का उपयोग करके हल किया गया।

bash-4.2 $ बंडल स्थापित करें
जेमफाइल का पता नहीं चल सका
bash-4.2 $ pwd
/home/amit/redmine/redmine-2.2.2-0/apps/redmine
bash-4.2 $ cd htdocs /
bash-4.2 $ ls
एप्लिकेशन कॉन्फिग db अतिरिक्त जेमफाइल लिब प्लगइन्स रेकफाइल स्क्रिप्ट tmp
बिन config.ru doc ​​फाइलें Gemfile.lock लॉग पब्लिक README.rdoc परीक्षण विक्रेता
bash-4.2 $ cd प्लगइन्स /
bash-4.2 $ बंडल स्थापित करें
रेक का उपयोग करना (0.9.2.2) 
I18n (0.6.0) का उपयोग करना 
मल्टी_जॉन (1.3.6) का उपयोग करना 
एक्टिविस्पोर्ट (3.2.11) का उपयोग करना 
बिल्डर का उपयोग करना (3.0.0) 
सक्रियमोडेल (3.2.11) का उपयोग करना 
एराबिस (2.7.0) का उपयोग करना 
यात्रा का उपयोग करना (1.0.4) 
रैक का उपयोग करना (1.4.1) 
रैक-कैश (1.2) का उपयोग करना 
रैक-परीक्षण (0.6.1) का उपयोग करना 
हाइक का उपयोग करना (1.2.1) 
झुकाव का उपयोग करना (1.3.3) 
स्प्रोकेट का उपयोग करना (2.2.1) 
एक्शनपैक (3.2.11) का उपयोग करना 
माइम-प्रकारों का उपयोग करना (1.19) 
पॉलीग्लॉट का उपयोग करना (0.3.3) 
ट्रीटोप का उपयोग करना (1.4.10) 
मेल का उपयोग करना (2.4.4) 
एक्शनमेलर का उपयोग करना (3.2.11) 
Arel का उपयोग कर (3.0.2) 
Tzinfo का उपयोग करना (0.3.33) 
Activerecord (3.2.11) का उपयोग करना 
Activeresource का उपयोग करना (3.2.11) 
कोडर का उपयोग करना (1.0.6) 
रैक-एसएसएल (1.3.2) का उपयोग करना 
Json (1.7.5) का उपयोग करना 
Rdoc (3.12) का उपयोग करना 
थोर का उपयोग (0.15.4) 
रेल का उपयोग करना (3.2.11) 
Jquery- रेल का उपयोग करना (2.0.3) 
Mysql2 (0.3.11) का उपयोग करना 
नेट-लैडैप (0.3.1) का उपयोग करना 
रूबी-ओपनिड (2.1.8) का उपयोग करना 
रैक-ओपनिड (1.3.1) का उपयोग करना 
बंडल का उपयोग करना (1.2.3) 
रेल का उपयोग करना (3.2.11) 
Rmagick (2.13.1) का उपयोग करना 
आपका बंडल मैं

3

मैंने प्रॉजेक्ट डायरेक्टरी से बाहर निकलने के बाद इसी तरह की समस्या को हल किया, फिर प्रोजेक्ट डायरेक्टरी और बंडल इंस्टाल में वापस आ गया।


1

यहाँ कुछ आप कोशिश कर सकता है।

इसे अपने एप्लिकेशन को चलाने के लिए आपके द्वारा उपयोग की जाने वाली किसी भी कॉन्फ़िग फ़ाइल में जोड़ें।

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

रेल और अन्य रैक आधारित ऐप इस योजना का उपयोग करते हैं। यह कभी-कभी ऐसा होता है कि आप उन चीजों को चलाने की कोशिश कर रहे हैं जो आपकी रूट से कुछ निर्देशिकाओं से अधिक गहरी हैं जहां आपका जेमफाइल सामान्य रूप से स्थित है। बेशक आपने अभी के लिए इस समस्या को हल कर लिया है, लेकिन कभी-कभी हम सभी इस जेफाइल को खोजने में परेशानी में पड़ जाते हैं। मुझे कभी-कभी अच्छा लगता है जब आप सभी .bundle डायरेक्टरी में भी रत्नों को रख सकते हैं। इस साइट के पते को अपने तकिए के नीचे रखने के लिए कभी भी दर्द नहीं होता है। http://bundler.io/


0

बहुत सरल है। जब यह कहता है कि 'जेमफाइल का पता नहीं लगा सकता है' तो इसका मतलब उस फ़ोल्डर में है जो आप वर्तमान में हैं या आप जिस डायरेक्टरी में हैं, उसमें जेमफाइल नाम की कोई फाइल नहीं है। इसलिए आपके कमांड प्रॉम्प्ट में उस फ़ोल्डर का एक स्पष्ट या पूर्ण पथ दिया गया है, जहां इस तरह का फ़ाइल नाम "जेमफाइल" उदाहरण के लिए cd C: \ Users \ Administrator \ Desktop \ RubyProject \ डेमो है।

यह निश्चित रूप से एक मिनट में हल हो जाएगा।

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.