माणिक डिबगर breakpoints मैं फ़ाइलों को अलग में सेट निष्पादन पर में शुरू होता है से पर रोक नहीं करता है उदाहरण के लिए, इन दो फ़ाइलें, foo.rb पर विचार करें:।सेटिंग ब्रेकप्वाइंट कोई प्रभाव नहीं है
# foo.rb
class Foo
def bar
puts "baz"
end
end
और main.rb:
# main.rb
require './foo'
Foo.new.bar
मैं ruby -r debug .\main.rb
का उपयोग कर डिबगिंग शुरू करते हैं। अब, जब मैं b ./foo.rb:4
का उपयोग कर किसी अन्य फ़ाइल में किसी विशिष्ट फ़ाइल पर ब्रेकपॉइंट सेट करने का प्रयास करता हूं, तो मुझे संदेश संदेश मिलता है foo.rb: 4 पर ब्रेकपॉइंट 1 सेट करें, लेकिन जब मैं cont
, प्रोग्राम अंत में निष्पादित करता है, और डीबगर कभी नहीं रोकता है। हालांकि, अगर मैं main.rb में एक पंक्ति को तोड़ता हूं, उदा। b ./main.rb:3
, या एक विधि, उदा। b Foo.bar
, डीबगर अपेक्षित के रूप में रोकता है।
डीबगर मुख्य फ़ाइल के अलावा फ़ाइलों में ब्रेकपॉइंट्स पर क्यों नहीं रुकता है?
अद्यतन: मैंने विंडोज 7 पर रूबी 1.9.3 के साथ-साथ ओएस एक्स 10.8 पर इसकी कोशिश की है; यह किसी भी पर्यावरण में काम नहीं करता है।
मैं भी सिर्फ एहसास हो गया स्क्रिप्ट के बाद अंत तक समाप्त हो गया है डिबगर इस्तीफा कि: मैं main.rb डिबगिंग शुरू करते हैं, cont
, तो baz कंसोल पर छपा है का उपयोग करें और मैं सही में वापस आ गया हूँ खोल। क्या यह अपेक्षित व्यवहार है, या डीबगर क्रैश हो सकता है?
आप मुख्य में ब्रेकप्वाइंट स्थापित करने की कोशिश की है चाहिए: 3 (के बाद की आवश्यकता होती है भरी हुई है), कि करने के लिए चल रहा है ब्रेकपॉइंट और फिर दूसरा ब्रेकपॉइंट सेट करना? –
@AlexBrown आपके सुझाव के बाद, मैंने 'अगली' के साथ आवश्यकता को बढ़ा दिया है, फिर * foo.rb * और 'cont''d में ब्रेकपॉइंट जोड़ा - एक ही परिणाम। – waldrumpus
मुझे रूबी 2.1.0 का उपयोग कर अब एक ही समस्या है। क्या आपने इसे हल किया है? – studyro