2011-09-15 11 views
9

इंटेलिजे आईडीईए 10.5 (शायद यह मायने रखता है)।स्कैला में किसी अन्य वर्ग को मुख्य विधि कैसे स्थानांतरित करें?

मैं स्कैला के लिए नया हूं, इसलिए मैंने एक अजीब तरीके से शुरुआत की। मैंने दो वर्गों के साथ एक फ़ाइल बनाई - खाली मेन ऐप और दूसरी कक्षा, हैलोवर्ल्ड विधि मुख्य के साथ।

मैंने इसे संकलित और निष्पादित किया - IntelliJ स्वचालित रूप से मुख्य वर्ग के रूप में हैलोवर्ल्ड का पता चला। ठीक था।

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

मैं ऐसे परिणाम के साथ इसे चलाने के लिए करने की कोशिश की:

MainApp मुख्य विधि होना चाहिए स्थिर

मैं पूरी तरह से हैरान हूँ। सबसे पहले, स्कैला में स्थिर तरीके नहीं हैं। सबसे दूसरा, यह अब संकलित क्यों नहीं करता है, जब यह पहले (हेलोवर्ल्ड क्लास के साथ) संकलित होता है। हालांकि मुझे केवल एक आवश्यकता है जिसमें एक मुख्य विधि है।

आपकी मदद के लिए अग्रिम धन्यवाद।

कृपया ध्यान दें: मैं जानता हूँ कि मैं शुरू से एक नई परियोजना की समस्या पूरी तरह से बचने के लिए शुरू कर सकते हैं, लेकिन मैं, कुछ सीखने अर्थात पता करने के लिए क्या हो रहा है, और इस परियोजना फिक्सिंग प्राप्त करना चाहते हैं।

+0

कृपया, MainApp का कोड पोस्ट करें। – jpalecek

उत्तर

11

जावा में स्थिर तरीके लगभग स्केल में सिंगलटन विधियों से मेल खाते हैं। आपके पास

object MainApp { 
    def main(args : Array[String]) = ... 
} 

आपके कोड में class MainApp नहीं होना चाहिए।

+0

आपको बहुत धन्यवाद, नौसिखिया की बेवकूफ गलती ;-) – greenoldman

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