2012-06-24 14 views
13

मेरे पास एक नोडजेस स्क्रिप्ट है जो किसी वेबपृष्ठ को स्क्रैप करने के लिए फ़ैंटोमज-नोड का उपयोग करती है। जब मैं टर्मिनल विंडो से चलाता हूं तो यह ठीक काम करता है, लेकिन जब मैं नोड जेएस एप्लिकेशन के लिए रन कॉन्फ़िगरेशन के माध्यम से वेबस्टॉर्म के अंदर से नहीं चलता हूं।स्क्रिप्ट वेबस्टॉर्म में विफल रहता है लेकिन टर्मिनल से नहीं

वेबस्टॉर्म में त्रुटि का कारण क्या हो सकता है?

मैंने पहले से ही .bash_profile की सामग्री पर टिप्पणी करने के बाद टर्मिनल से स्क्रिप्ट चलाने का प्रयास किया है और यह अभी भी काम करता है। मैंने process.env की अन्य नमूना लिपि में भी सामग्री की जांच की है और देखा है कि वेबस्टॉर्म बनाम टर्मिनल में मान पूरी तरह से अलग हैं।

स्क्रिप्ट:

var phantom = require('phantom'); 
phantom.create(function(ph) { 
    return ph.createPage(function(page) { 
     return page.open("http://www.google.com", function(status) { 
      console.log("opened google? ", status); 
      return page.evaluate((function() { 
       return document.title; 
      }), function(result) { 
       console.log('Page title is ' + result); 
       return ph.exit(); 
      }); 
     }); 
    }); 
}); 

टर्मिनल निर्गम (महान काम करता है!):

opened google? success 
Page title is Google 

Webstorm कंसोल आउटपुट (विफल रहता है):

/usr/local/bin/node phantom.js 
phantom stderr: execvp(): No such file or directory 


Process finished with exit code 0 
+1

यदि आप मैक पर हैं, तो इस प्रश्न को जांचें: http://apple.stackexchange.com/q/51677। – CrazyCoder

उत्तर

25

वेबस्टॉर्म एक पैथ चर सेट करता है, लेकिन टर्मिनल में चलने पर आपके ऐप को पाथ वैरिएबल से अलग होता है। मेरे समाधान, एक हैक:

  1. प्रकार node आरईपीएल
  2. भागो process.env
  3. कॉपी करने के लिए पथ मूल्य
  4. की सामग्री को एक वातावरण चर जोड़ें Webstorm पथ इस मान का उपयोग करता है कहा जाता है। यह डिफ़ॉल्ट पाथ चर को ओवरराइट करेगा जो वेबस्टॉर्म आपके ऐप देता है।

हो गया!

+0

इसने मुझे अंततः रूबीमाइन के साथ एक ही समस्या रखने में मदद की। – forforf

+0

आप वेबस्टॉर्म में पर्यावरण चर को कैसे जोड़ रहे हैं? – pgreen2

+1

@ pgreen2 रन/डीबग कॉन्फ़िगरेशन स्क्रीन पर जाएं, नोड जेएस कॉन्फ़िगरेशन का चयन करें जिसे आप ठीक करने का प्रयास कर रहे हैं, फिर 'पथ से नोड' और 'नोड पैरामीटर्स' जैसे फ़ील्ड के बीच में आपको 'पर्यावरण चर' नामक फ़ील्ड देखना चाहिए '। कॉन्फ़िगरेशन के लिए पर्यावरण चर के लिए आपको CRUD स्क्रीन पर लाने के लिए '...' बटन पर क्लिक करें। – Trindaz

1

आप मैक पर हैं http://devnet.jetbrains.net/docs/DOC-1160 देखना । यह दस्तावेज़ मूल रूप से रूबीमाइन के लिए लिखा गया था, लेकिन यह वेबस्टॉर्म के लिए भी लागू है।

संबंधित मुद्दे