2011-03-01 11 views
12

मैं, नोड में एक्सप्रेस का उपयोग करने के लिए सब कुछ ठीक है, संकलित स्थापित कोशिश कर रहा हूँ दे रही है, NPM हो गया और साथ एक्सप्रेस स्थापित:एक्सप्रेस ढांचा एक बहुत ही अजीब त्रुटि

NPM एक्सप्रेस

समस्या स्थापित हर बार जब मैं इसे "आवश्यकता" करने की कोशिश करता हूं, तो यह मुझे एक त्रुटि देता है! एक नजर डालें, एक सरल फ़ाइल के रूप में app.js:

var express = require('express'); 

जब मैं इसे चलाने:

tlab065:~/proj/Express-server-abstraction> node app.js 
node.js:116 
     throw e; // process.nextTick error, or 'error' event on first tick 
     ^
TypeError: Cannot read property 'prototype' of undefined 
    at Object.<anonymous> (/people/home/jdomingues/local/node/lib/node/.npm/express/1.0.7/package/lib/express/server.js:87:44)  
    at Module._compile (module.js:373:26) 
    at Object..js (module.js:379:10) 
    at Module.load (module.js:305:31) 
    at Function._load (module.js:271:10) 
    at require (module.js:317:19) 
    at Object.<anonymous> (/people/home/jdomingues/local/node/lib/node/.npm/express/1.0.7/package/lib/express/index.js:28:31) 
    at Module._compile (module.js:373:26) 
    at Object..js (module.js:379:10) 
    at Module.load (module.js:305:31 

कोई मेरी मदद कर सकते हैं? क्यों यह त्रुटि आ रही है? मैं एक्सप्रेस से एक अलग संस्करण कैसे स्थापित कर सकता हूं?

उत्तर

16

मुद्दा आप शायद है वह यह है कि नवीनतम कनेक्ट (के रूप में विरोध करने के लिए "आप नवीनतम कनेक्ट स्थापित करने की आवश्यकता") आदेश @Shripad से पता चला है उपयोगी है और शायद आपको बताएंगे कि आप कनेक्ट 1.0, Yay है। ..uh ओह व्यक्त नहीं 1.0 कनेक्ट के लिए पूरी तरह से तैयार, 0.5.10 के लिए वापस जाने के लिए इस कार्य करें:

npm install [email protected] 
+1

ओह! एक 1.0 है? मैं पहले से ही पुराना हूँ! :) –

+0

बहुत दोस्ताना धन्यवाद, अब यह ठीक है ='p –

+1

मुझे एक ही त्रुटि मिल रही है लेकिन जब मैं वापस रोल करता हूं और यह सक्रिय रूप से [email protected] दिखाता है तो मुझे अभी भी एक ही त्रुटि मिल रही है। यह बहुत नया है और शायद आज पहले इसे अपग्रेड करने के साथ करना है। यह किसी कारण से पूरी तरह से वापस नहीं लुढ़का है। – JohnAllen

3

आपको नवीनतम कनेक्ट स्थापित करने की आवश्यकता है ([email protected])। आपको लगता है कि स्थापित किया गया है कनेक्ट संस्करण की जांच सुनिश्चित करें और सक्रिय करें:

npm ls connect | grep active

लाइन है कि ऊपर फेंकता एक त्रुटि संदर्भ connect.Server।

0

दूसरों के लिए (यदि आपके [email protected] साथ NPM स्थापना रद्द करें कनेक्ट रद्द नहीं होती है @ 1.0.1) मैंने/usr/local/lib/node/connect/

पर मिली वास्तविक फ़ाइलों को हटा दिया है जो मदद करता है।

2

jpstrikesback जवाब कोशिश करते हैं और सही क्रम में dependencys स्थापित करने के लिए सुनिश्चित करें:

npm install [email protected] 
npm install [email protected] 

क्योंकि NPM एक्सप्रेस कनेक्ट का नवीनतम संस्करण स्थापित होगा (अगर कोई भी उपलब्ध है स्थापित है, और यह टूट जाएगा) और एक्सप्रेस में/1.0.7/पैकेज/lib/एक्सप्रेस/server.js

connect = require('connect') 

जो एक नहीं कनेक्ट के नवीनतम संस्करण की आवश्यकता के लिए लगता है कि आप की आवश्यकता है आपके ऐप में

+0

आपके द्वारा सुझाए गए निर्भरताओं को स्थापित करने से मेरे मामले में मदद नहीं मिली। किसी भी तरह से एक्सप्रेस अभी भी कनेक्ट का एक नया संस्करण स्थापित करता है और ऐसा प्रतीत होता है (?!?)। यह मेरे एनपीएम एलएस का स्निपेट यहां चित्रित करने के लिए: http://tinypic.com/r/z1nxk/6 – nerdess

3

कोड को शामिल करने वाले कोड को टिप्पणी करते हुए मेरे मामले में मदद मिली।

//connect = require('connect');