2012-09-07 9 views
11

के साथ त्रुटि स्थापित करें, मैं इस प्रश्न का उत्तर/उत्तर दे रहा हूं क्योंकि यह मुझे & लटका देता है, ऐसा लगता है कि किसी और को भी वही समस्या होगी।विंडोज x64 RabbitMQ एरलंग पर्यावरण var (ERLANG_HOME)

विंडोज सर्वर 2008 x64 पर RabbitMQ x64 v2.8.6 का स्थापित करें।

एर्लांग के बाद सी: \ प्रोग्राम फ़ाइलें \ erl5.9.2 पर डिफ़ॉल्ट स्थापित स्थान का उपयोग कर स्थापित करने के बाद, मैं rabbitmq-service.bat चलाने के माध्यम से सर्वर को शुरू करने का प्रयास कर रहा हूं। विफल:

Please either set ERLANG_HOME to point to your Erlang installation 
or place the RabbitMQ server distribution in the Erlang lib folder. 

समस्या यह है कि .bat फ़ाइल में सही उपपथ नहीं है। erlang के 5.9.2 (R15B02) संस्करण के साथ। मेरी ERLANG_HOME निर्देशिका सही ढंग से सेट की गई है, लेकिन स्क्रिप्ट इसका उपयोग एरलांग के इस संस्करण के लिए सही ढंग से नहीं करती है, जो कि यह एरलांग नोब को "erts-5.9.2" नामक एक नई उपनिर्देशिका के लिए प्रतीत होता है जो समस्याएं पैदा कर रहा है। हो सकता है कि इन स्क्रिप्ट्स के साथ कोई अंतरंग वर्णन कर सके कि हैक वर्कअराउंड के बिना यह काम सही तरीके से कैसे किया जाए?

उत्तर

11

विंडोज़ पर कई RabbitMQ नियंत्रण .bat फ़ाइलें हैं। आपके द्वारा उपयोग किए जाने वाले प्रत्येक व्यक्ति को एरलांग पथ को सही ढंग से प्रतिबिंबित करने के लिए बदला जाना चाहिए। इस उदाहरण में, मैं rabbitmq-server.bat को संपादित कर रहा हूं क्योंकि यह आसान लोगों में से एक है ... आप जिस भी बीट फाइल को चलाने के लिए चाहते हैं उसे इस हैक को काम करने के लिए, rabbitmq_service.bat फ़ाइल के साथ काम करने की आवश्यकता होगी समायोजित करने के लिए सबसे अधिक शामिल होने के नाते।

संपादन कि rabbitmq_server.bat फ़ाइल, आप लाइन लगभग 48 पर देख सकते हैं या तो वहाँ एक जाँच अगर erl.exe पाया जाता है को देखने के लिए, लेकिन पथ सही नहीं है:

if not exist "!ERLANG_HOME!\bin\erl.exe" (

कि पथ Erlang के 5.9.2 संस्करण के लिए फ़ाइल संरचना से मेल नहीं खाता है।

"!ERLANG_HOME!\bin\erl.exe" 

मैं बस पथ hardcoded: मैं बस के बारे में लाइन 48 को 58 से इस पथ की जांच निकाल कर इस तय है, तो, जहां .bat वास्तव में जो पढ़ता है के बारे में लाइन 129 पर erl.exe को फोन करेगा मेरी erl.exe रहे हैं:

"C:\Program Files\erl5.9.2\erts-5.9.2\bin\erl.exe" 
सही pathing साथ

, फ़ाइलें .bat RabbitMQ चलेंगे।

+0

.bat फ़ाइलों को संपादित करने से पहले, मैं पर्यावरण चर में ERLANG_HOME चर सत्यापित करने का सुझाव देता हूं। किसी भी तरह erlang इंस्टॉलर इसे एक टाइपो के साथ सेट। पथ की प्रतिलिपि बनाने के लिए विंडोज एक्सप्लोरर का उपयोग करें और इसे पेस्ट करें ताकि यह अभिव्यक्ति में डालने पर अच्छी तरह से फिट हो सके "! ERLANG_HOME! \ Bin \ erl.exe" (उदाहरण के लिए \\ से बचें) – Andrei

+0

आपका ERLANG_HOME शायद सी: \ प्रोग्राम फ़ाइलें \ erl5.9.2, और बस सी: \ प्रोग्राम फ़ाइलें \ erl5.9.2 \ erts-5.9.2 में बदलना, समस्या को ठीक करना चाहिए था। मुख्य बिंदु RabbitMQ है और संभवतः एरलांग का उपयोग करने वाले किसी और चीज से होम फ़ोल्डर "बिन" का अभिभावक होने की उम्मीद कर रहा है ताकि सुनिश्चित किया जा सके कि उस फ़ोल्डर के चरम बिंदुओं को खुश ऐप्स के लिए बनाना चाहिए। – eselk

1

दिलचस्प है कि यह आपके लिए काम करता है। Erl5.9.2 में दो बग्स का रिकॉर्ड है जो एक अपूर्ण स्थापना का कारण बनता है जहां %ERLANG_HOME%\bin स्थापित नहीं है।

* या तो 32 बिट मशीन पर 64 बिट एरलांग स्थापित * * प्रोग्राम शुरू नहीं हो सकता है क्योंकि MSVCR100.dll आपके कंप्यूटर से गायब है। "

https://groups.google.com/d/topic/erlang-programming/wGtFLzapiQ0/discussion

5.9.1 का प्रयास करें या किसी अन्य संस्करण। वे इंस्टॉलर चेतावनी के भविष्य के संस्करणों को बनाने में भी उल्लेख करते हैं यदि यह विफल हो जाता है।

0

मुझे बस एक ही समस्या का उल्लेख किया गया था। मैंने विंडोज 7 मशीन पर otp_win64_R15B02 स्थापित किया और सब कुछ पूरी तरह से काम किया, लेकिन मैंने विंडोज 2008 सर्वर पर एक ही इंस्टॉलर का इस्तेमाल किया और बिन निर्देशिका नहीं बनाई गई थी। मैंने तब otp_win64_R15B02 को अनइंस्टॉल किया और otp_win64_R15B02_with_MSVCR100_installer_fix डाउनलोड किया और बिन निर्देशिका बनाई गई थी।

मुझे संदेह है कि यह मेरे विंडोज 7 सिस्टम पर काम करने का कारण है कि मेरे पास विजुअल स्टूडियो स्थापित है और आवश्यक पुस्तकालय पहले से ही उपलब्ध हैं जो otp_win64_R15B02 इंस्टॉलर को सही तरीके से काम करने की अनुमति देता है।

ओह, और यदि आप RabbitMQ RabbitMQ स्थापित टूटा इंस्टालर के साथ सफल होगा लेकिन RabbitMQ के बाद otp_win64_R15B02_with_MSVCR100_installer_fix स्थापित करने से काम नहीं चलेगा, बस अनइंस्टॉल करना और चलाने के लिए Erlang स्थापित कर रहे हैं इस को हल करने को पुन: स्थापित RabbitMQ।

2

मैं वही समस्या थी, .bat फाइलों में ERLANG_HOME संशोधित काम नहीं किया। तब मैंने कोशिश की गूंज% ERLANG_HOME% कमांड प्रॉम्प्ट, कि वातावरण चर मूल्य प्रिंट नहीं था (मैं देख सकता था कि ERLANG_HOME वातावरण चर अग्रिम सिस्टम सेटिंग के तहत बनाया गया है), जो मुझे नेतृत्व को लगता है कि मैं के लिए सर्वर को पुनः आरंभ करने की जरूरत है Erlang की 64 बिट स्थापना। सर्वर को रिबूट करने के बाद, यह एक आकर्षण की तरह काम किया। मुझे उम्मीद है इससे किसी को सहायता मिलेगी।

1

1- सेट वातावरण चर:

चर नाम: ERLANG_HOME
चर मूल्य: C:\Program Files (x86)\erl6.4

ध्यान दें: ऊपर चरण पर बिन शामिल नहीं हैं।

2- PATH पर्यावरण चर को %ERLANG_HOME%\bin जोड़ें:

चर नाम: PATH
चर मूल्य: %ERLANG_HOME%\bin

यह अच्छी तरह से काम करता है।

0

मैं इस समस्या का एक ही तरह चढ़ गया। मैंने नीचे दिए गए अनुसार तीन बदलाव करके इसे हल किया।

  1. पर्यावरण परिवर्तनीय में पथ चर "ERLANG_HOME" : "C:\Program Files\erl8.0" अद्यतन करें।
  2. Upadte "पथ" चर "Path" : ";%ERLANG_HOME%\bin;"
  3. urself सी ड्राइव में पूर्ण नियंत्रण"Program Files" से अधिक अनुमति प्रदान करें।

यह इस तरह से मेरे लिए काम किया।

0

मुझे लगता है कि इस windows.I पर इस मुद्दे एन्कोडिंग है एक सही मान देखना लेकिन मैं प्रश्न चिह्न के साथ आते मूल्य बारे में कंसोल पर गूंज% ERLANG_HOME%। ये कदम इसे ठीक करते हैं।

वातावरण चर खिड़की

2.edit ERLANG_HOME आइटम

मूल्य, खुले नोटपैड 3.copy

और नोटपैड पर

4.copy फिर वहाँ पेस्ट और खिड़की

संपादित करने के लिए पेस्ट 1.go

5.apply और बाहर निकलने खिड़की

6.close कमांड लाइन उपकरण और

फिर से खोलना

7. रबिटमक बल्ले फ़ाइल।

0

यह समस्या अभी भी Erlang 18.3 (erl7.3) और RabbitMQ 3.6.9 में विंडोज पर जब संस्करण 3.6.9 के लिए RabbitMQ के किसी भी पुराने संस्करण से उन्नयन होता है। जैसा कि पहले से ही बताया गया है, समाधान को शुरू करने से पहले 'setx -m ERLANG_HOME "सी: \ प्रोग्राम फ़ाइलें \ erl7.3" के साथ मैन्युअल रूप से ERLANG_HOME सेट करना है।

क्या होता है कि खरगोश एमक्यू 3.6.9 इंस्टॉलर खरगोश एमक्यू के पुराने संस्करण को हटाते समय सिस्टम से पर्यावरण परिवर्तनीय ERLANG_HOME को हटा देता है। फिर, जब यह स्थापना चरण तक पहुंच जाता है, तो यह ERLANG_HOME चर को वापस नहीं रखता है। फिर, रैबिटएमक्यू शुरू करने वाली बैच फ़ाइलें एरलांग नहीं मिल सकती हैं। वे "where.exe" का उपयोग करके एर्लांग की होम निर्देशिका को खोजने का प्रयास करते हैं लेकिन यह हमेशा अपग्रेड के बाद विफल रहता है।

खरगोश एमक्यू के इंस्टॉलर भी सभी एरलांग पृष्ठभूमि प्रक्रियाओं को मार नहीं पाते हैं, जिससे विंडोज़ "उपयोग में फ़ाइल" समस्या के कारण इसकी कई फाइलें अव्यवस्थित हो सकती हैं। यह% APPDATA% \ RabbitMQ और "सी: \ प्रोग्राम फ़ाइलें \ RabbitMQ" में "उपयोग में आने वाली फ़ाइलों" के पीछे छोड़ देता है। ये प्रक्रियाएं "erl.exe," "erlsrv.exe," और "epmd.exe" हैं। RabbitMQ इंस्टॉलर को RabbitMQ विंडोज सेवा को बंद करने के बाद इन प्रक्रियाओं को टास्किल करना चाहिए।

खरगोश एमक्यू विंडोज़ पर बदबूदार है।