2013-07-02 7 views
7

में स्कैला एप्लिकेशन को डीबग नहीं कर सकता है मैं इंटेलिजे आइडिया 12, एसबीटी और sbt-idea plugin का उपयोग कर स्कैला एप्लिकेशन विकसित कर रहा हूं। मैंने "gen-idea" कहकर सभी आवश्यक फाइलें जेनरेट कीं और सब कुछ ठीक हो गया - मैं एसबीटी में कमांड लाइन में स्रोतों को संकलित करने में सक्षम था, साथ ही इंटेलिजे आइडिया 12 में मेन्यू बिल्ड-> मेक प्रोजेक्ट का उपयोग कर।इंटेलिजे + एसबीटी-विचार-प्लगइन

यहाँ मेरी मुख्य वर्ग (Application.scala)

object Application extends App { 
    val a = 12345 
    println("application entry point 1235") 
} 

मैं val a = 12345 पर एक ब्रेकपाइंट है।

1) पहले अन्य त्रुटियां थीं, लेकिन अब "Module is not specified" कहती हैं। मैं इसे कैसे हल करूं?

मैं अपडेट पोस्ट कर दूंगा क्योंकि मेरी आंत मुझे बताती है कि अन्य त्रुटियां भी होंगी।

उत्तर

16

बस चलाने के लिए डीबग करने के लिए, आपको एक रन कॉन्फ़िगरेशन (मेनू रन -> कॉन्फ़िगरेशन संपादित करें) बनाना होगा। यदि आपने अभी तक नहीं किया है, तो आपको + बटन के साथ Application प्रविष्टि जोड़ने की आवश्यकता है।

न केवल आपको मुख्य श्रेणी निर्दिष्ट करने की आवश्यकता है, बल्कि यह भी कि "मॉड्यूल" वर्ग किस वर्ग से संबंधित है। डिफ़ॉल्ट रूप से, "मॉड्यूल के क्लासपाथ का उपयोग करें" खाली हो जाएगा। यहां पॉपअप मेनू में, आपको मुख्य मॉड्यूल का चयन करने की आवश्यकता है ("-बिल्ड" में समाप्त होने वाला कोई नहीं)। इसे चुनने के बाद और "ठीक" के साथ बंद करें, इसे काम करना चाहिए।

enter image description here


हालांकि आवश्यक नहीं है, मैं भी बजाय के निर्माण के लिए एसबीटी का उपयोग "बनाओ" करने के लिए सलाह देते हैं। "लॉन्च से पहले" भाग में कॉन्फ़िगरेशन में, "मेक" चुनें और "-" पर क्लिक करें, फिर "+" पर क्लिक करें और एसबीटी -> टेस्ट: उत्पादों का चयन करें।

: Here is the reference इंटेलिजे के लिए एसबीटी प्लगइन के लिए संपादित करें।

+0

हे मेरे भगवान, मुझे विश्वास नहीं है कि मैंने इसे चलाया है! हालांकि, अन्य मुद्दे हो सकते हैं, लेकिन अभी के लिए यह बिल्कुल ठीक है। –

+0

मैं वर्कशीट नहीं चला सकता, यह कहता है 'कंपाइलर प्रारंभ करने में विफल: वर्ग scala.reflect.BeanInfo नहीं मिला। ** ध्यान दें कि 2.8 स्कैला के रूप में जावा क्लासपाथ का उपयोग नहीं किया जाता है। ** पुराना व्यवहार पास -usejavacp को स्केल करने के लिए, या यदि सेटिंग ** प्रोग्रामिंग रूप से ऑब्जेक्ट का उपयोग करते हैं, सेटिंग्स.usejavacp.value = true.', भले ही मैंने एप्लिकेशन के लिए बिल्कुल वही कॉन्फ़िगरेशन किया हो। –

+0

वर्कशीट के साथ यहां कोई समस्या नहीं है ... शायद इसके लिए एक नया प्रश्न खोलें। आप अपने प्रोजेक्ट-2.10 में किस स्कैला संस्करण का उपयोग कर रहे हैं? –