दिलचस्प पोस्ट
मानक स्ट्रिंग में मैं कैसे खोजें / ढूँढें और बदलें? jQuery ईवेंट हैंडलर हमेशा क्रम में निष्पादित होते हैं – इस तरह से कोई रास्ता नहीं है? सी # के साथ GPU का उपयोग सीएसएस का उपयोग करके पाठ की लंबाई को एन लाइन पर सीमित करें Mac पर आर स्थापित करना – चेतावनी संदेश: LC_CTYPE सेट करना विफल, "सी" का उपयोग करना मैं कैसे बता सकता हूं कि मेरे प्रोग्राम का एक अन्य उदाहरण पहले से चल रहा है? जावा कुंजी स्टोर में पीईएम आयात करें क्या वाकई गुंजाइश है? जावास्क्रिप्ट: एक कॉलबैक फ़ंक्शन में मापदंडों को पास करना डिबग मोड के लिए एंड्रॉइड स्टूडियो में एसएचए -1 फिंगरप्रिंट सर्टिफिकेट कैसे प्राप्त करें? सामान्य शब्दों में गैर-प्रताड़ जावास्क्रिप्ट क्या है? मैं ऐनाकोंडा के संस्करण में कैसे स्थापित करूं? 2.1 विंडोज 64 बिट पायथन 3.4 के लिए? पीडो में एकाधिक मूल्यों को बाध्य करना एक अस्थायी java.lang.String बनाएँ मैं डेल्फी दस्तावेज़ीकरण के लिए कैसे खोज सकता / सकती हूं?

Javac और ग्रहण संकलक के बीच क्या अंतर है?

क्या एक्लिप्स के जावा कम्पाइलर एक ही कोर के आस-पास एक आवरण है कि javac प्रोग्राम को चारों ओर लपेटा गया है, या यह पूरी तरह एक अलग संकलक है? यदि उत्तरार्द्ध, वे पहिया को फिर से क्यों बदलेंगे?

वेब के समाधान से एकत्रित समाधान "Javac और ग्रहण संकलक के बीच क्या अंतर है?"

ग्रहण ने अपने स्वयं के कंपाइलर को कार्यान्वित किया है जिसे जावा (ईसीजे) के लिए एक्लिप्स कंपाइलर कहा जाता है।

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

एक और अंतर यह है कि एक्लिपस कंपाइलर एक्लिप्स आईडीई के भीतर से वृद्धिशील निर्माण की अनुमति देता है, अर्थात, आप टाइपिंग खत्म करते ही सभी कोड संकलित हो जाते हैं।

तथ्य यह है कि ग्रहण अपने स्वयं के कंपाइलर के साथ आता है क्योंकि आप जावा एसडीके स्थापित किए बिना एक्लिप्स में जावा कोड लिख सकते हैं, संकलन कर सकते हैं और चला सकते हैं।

कुछ उदाहरण जहां ईसीजे को जवाक के ऊपर पसंद किया गया है:

  • अपाचे टॉमकेट जेएसपी को संकलित करने के लिए ईसीजे का उपयोग करता है,
  • IntelliJ IDEA ECJ के लिए समर्थन है, जावा (जीसीजे) 4.3 के लिए जीएनयू कंपाइलर के रूप में,
  • जीसीजे ईसीजे के साथ एकीकृत करता है,
  • Liferay ECJ के साथ बनाता है

सभी ने पहले ही समझाया है कि वे अलग हैं। यहां मैंने दो कंपाइलर के बीच के व्यवहारों में कुछ अंतर देखा है। वे सभी (कम से कम) कार्यान्वयन में से एक बग में उबालें।

संकलित समय अनुकूलन संबंधित

  • ग्रहण बग? केवल डिफ़ॉल्ट केस के साथ एक अशक्त पर स्विच करना

जेनेरिक प्रकार अवरोध संबंधित

  • जेनेरिक्स एक्लिप्से में संकलित और चलाता है, लेकिन जवाक में संकलन नहीं करता
  • कम्पाइलर एक सामान्य पद्धति के एक अशक्त पैरामीटर के साथ अलग तरीके से व्यवहार करते हैं

ग्रहण के अंतर्निर्मित संकलक आईबीएम के जैक्स जावा कंपाइलर पर आधारित है। (ध्यान दें कि ईक्लिप्स ने आईबीएम में भी अपना जीवन शुरू किया)। यह जेडीके में सन के जावा कम्पाइलर से पूरी तरह से स्वतंत्र है; यह सूर्य के javac आसपास एक आवरण नहीं है

जैक्स एक लंबे समय के लिए अस्तित्व में है, यह मानक JDK जावा कंपाइलर (लेकिन मुझे नहीं पता कि यह अभी भी सच है) की तुलना में बहुत तेजी से हुआ करता था। जैसा कि क्यों आईबीएम अपना जावा कम्पाइलर लिखना चाहता था: हो सकता है कि लाइसेंसिंग कारणों के कारण (उनके पास अपना जावा क्रियान्वयन भी हो)

यह पूरी तरह एक अलग संकलक है यह जवैक के रूप में जरूरी है क्योंकि ग्रहण साइट से थोड़ा टूटा हुआ कोड के संकलन की अनुमति नहीं है

एक वृद्धिशील जावा कम्पाइलर एक्लिपस बिल्डर के रूप में लागू, यह जावा कलेप्लर के लिए विज़ुअलएज से विकसित तकनीक पर आधारित है। विशेष रूप से, यह चलाने और डीबग कोड की अनुमति देता है जिसमें अभी भी अनसुलझे त्रुटियां हैं