2009-10-29 18 views
9

यह सवाल सामान्य रूप से लगभग 64-बिट जावा ऐप्स है, हालांकि नेटबीन्स/ग्रहण के साथ काम करने के कारण मैं इस पर आया था। मैं 64-बिट ओएस (विंडोज 7) के साथ 64-बिट प्रोसेसर का उपयोग कर रहा हूं। मैं नेटबीन्स/ग्रहण को 4 जीबी से अधिक ढेर मेमोरी (यानी, एक्सएमएक्स ध्वज का उपयोग करके) चलाने के लिए चाहता था, लेकिन मैं कुछ भ्रम में भाग रहा हूं। नेटबीन्स का 64-बिट संस्करण प्रतीत नहीं होता है, और जबकि अन्य ओएस के लिए ग्रहण के 64-बिट संस्करण हैं, विंडोज़ के लिए कोई भी नहीं है। इसके अलावा, मुझे नवीनतम जेआरई/जेडीके का 64-बिट संस्करण नहीं मिला है (मैंने इनके अस्तित्व का उल्लेख करने वाली साइटें पढ़ी हैं, इसलिए मुझे यकीन नहीं है कि सूर्य ने उन्हें अस्थायी रूप से नीचे ले लिया है)।64-बिट जावा ऐप्स: क्या 64-बिट ओएस, 64-बिट जेआरई और 64-बिट एप्लिकेशन आवश्यक है?

अब जब कि मैं मेरी स्थिति की व्याख्या की है, मेरे सवालों का इस प्रकार हैं:

  1. क्या सॉफ्टवेयर मैं ढेर स्मृति के 4GB की तुलना में अधिक के साथ Netbeans/ग्रहण/(यादृच्छिक जावा अनुप्रयोग) को चलाने के लिए की जरूरत है? क्या 64-बिट ओएस पर्याप्त है? क्या मुझे 64-बिट जेआरई की भी आवश्यकता है?
  2. मैंने सोचा कि जावा स्रोत कोड और जावा बाइटकोड आर्किटेक्चर-स्वतंत्र था, क्योंकि 32-बिट 64-बिट जेडीके के साथ संकलित जावा प्रोग्राम में 32-बिट या 64-बिट के साथ एक अलग मशीन पर चलाया जा सकता है JRE। यदि यह सच है, तो ग्रहण में 32-बिट संस्करण और 64-बिट संस्करण क्यों है (मुझे एहसास है कि उनके पास विंडोज के लिए कोई नहीं है, लेकिन उनके पास लिनक्स के लिए एक है)? क्या इसका मतलब यह है कि ग्रहण की संभावना मूल पुस्तकालय है, जिसके लिए 32-बिट बनाम 64-बिट मायने रखता है?

अग्रिम धन्यवाद,
red.october

अद्यतन 1:
ठीक है, यह पता चला है विंडोज के लिए ग्रहण का एक 64-बिट संस्करण है, लेकिन इसके कुछ कारण गहरे दफन (कम से कम यह नहीं देखा कि यह मुख्य पृष्ठ से कहां से जुड़ा हुआ था)। काफी थोड़ी देर के लिए खोज करने के बाद, मुझे blog post मिला, जिसमें कहा गया था कि आप विंडोज़ के लिए 64-बिट ग्रहण Eclipse Downloads पर प्राप्त कर सकते हैं। यह लिंक कई अलग-अलग रिलीज संस्करणों के लिंक वाले पृष्ठ पर इंगित करता है - मैंने अभी हाल ही में स्थिर रिलीज (इस पोस्ट के समय 3.5.1) चुना है। इस दूसरे पृष्ठ में ग्रहण 3.5.1 के लिए विभिन्न डाउनलोड सूचीबद्ध हैं, और प्रत्येक डाउनलोड के लिए, आपके पास चुनने के लिए आर्किटेक्चर (32-बिट और 64-बिट) और ओएस (उदा।, विंडोज़, लिनक्स) की एक विस्तृत श्रृंखला है। मैंने व्यक्तिगत रूप से ग्रहण एसडीके डाउनलोड चुना है - यह "एक्लिप्स प्लेटफार्म, जावा डेवलपमेंट टूल्स, और प्लग-इन डेवलपमेंट एनवायरनमेंट, जिसमें स्रोत और उपयोगकर्ता और प्रोग्रामर दस्तावेज़ दोनों शामिल हैं" के साथ आता है। मुझे यकीन नहीं है कि मुझे स्रोत या दस्तावेज़ीकरण की आवश्यकता है, लेकिन मुझे लगता है कि मैं इसे बाद में हमेशा हटा सकता हूं।

उत्तर

9

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

हालांकि, मुझे लगता है कि 64 बिट नेटबीन क्यों नहीं मिल रहे हैं इसका मुख्य कारण यह है कि यह 100% शुद्ध जावा और वास्तुकला स्वतंत्र है। ग्रहण एक वैकल्पिक जीयूआई ढांचा प्रदान करता है जो अधिक देशी रूप और अनुभव (एसडब्ल्यूटी) के साथ प्रदान करता है और इसे विकास पर्यावरण के लिए ही उपयोग करता है। एक बार जब आप अपने जावा ऐप को मूल पुस्तकालयों से लिंक कर लेते हैं तो आपको पुस्तकालयों को सही आर्किटेक्चर के लिए वितरित करने की आवश्यकता होती है, इसलिए ग्रहण वितरण (आपकी दूसरी वस्तु) की आर्किटेक्चर निर्भरता।

+0

कूल देखें। –

+0

क्या जावा अनुप्रयोगों को वितरित करने का मतलब है मुझे संबंधित वास्तुकला के ग्रहण में विकसित करने की आवश्यकता है? – Chris

+0

@ क्रिस: नहीं, बिलकुल नहीं। आपको बस यह सुनिश्चित करना होगा कि मंच बाइनरी आपके उत्पाद के साथ भेजी जाए और सही तरीके से लोड हो जाएं। वहाँ बहुत सारे पेज हैं जो वर्णन करते हैं कि यह कैसे करें और मुझे यकीन है कि यह एसडब्ल्यूटी एफएक्यू में भी है (http://www.eclipse.org/swt/faq.php) – Fredrik

2

आप विंडोज 7 में 64 बिट जेडीके या जेआरई चला सकते हैं मैं अब उन्हें चला रहा हूं।

Java SE Development Kit 6u16

Java SE Runtime Environment 6u16

चुनें बूंद से जो ओएस नीचे आप Windows 32 या 64 बिट के एक विकल्प नहीं है।

+0

मुझे शायद इस सवाल को विभाजित करना चाहिए - फ्रेड्रिक ने मेरे सामान्य प्रश्नों का उत्तर दिया, लेकिन आपने जवाब दिया कि मैं 64-बिट जेडीके 6 कैसे प्राप्त कर सकता हूं (इसलिए मैंने दोनों को +1 जवाब दिया)। यह पता चला कि मेरी समस्या यह थी कि मैंने जेडीके + नेटबीन्स कॉम्बो EXE डाउनलोड करने का प्रयास किया, और वह स्वचालित रूप से जेडीके के 32-बिट संस्करण के साथ आता है। धन्यवाद। –

1

64 बिट जावा 'एप्लिकेशन' जैसी कोई चीज़ नहीं है। जावा संकलित कक्षाएं जावा बाइटकोड, अवधि में हैं। 64 बिट जेवीएम पर प्रोग्रामों को निष्पादित करना (जिसे बदले में 64 बिट ओएस की आवश्यकता होती है) उन्हें अधिक मेमोरी तक पहुंच प्रदान करती है, लेकिन अंतर प्रोग्राम के लिए अदृश्य है क्योंकि मेमोरी मैनिपुलेशन की सभी पहुंच छिपी हुई है और सभी डेटाटाइप समान हैं। कि समाशोधन के लिए धन्यवाद -

भी this question

+0

@ जेरिको: इस मामले में मुझे लगता है कि आपका जवाब अर्थपूर्ण पाप है, वह 32 बी जेवीएम की सीमा से अधिक स्मृति की मात्रा तक पहुंचना चाहता है, और ऐसी कोई चीज़ नहीं है, तो वह हर चर के लिए लंबे समय तक उपयोग कर सकता है और यह वास्तव में एक 64 बी जावा ऐप होगा। (प्वाइंटलेस, लेकिन संभव है।) –

+0

@ सुडो नोब: मुझे लगता है कि जेरिको ने मेरे प्रश्न का सही उत्तर दिया। देशी कोड के बिना जावा एप्लिकेशन में 32-बिट या 64-बिट संस्करण नहीं है (जो मैं पूछ रहा था) - आप इसे एक बार लिखते और संकलित करते हैं, और चीजें जैसे कि यह कितनी मेमोरी एक्सेस कर सकती है, JVM पर निर्भर है और हार्डवेयर मंच। मुझे नहीं लगता कि 64-बिट अनुप्रयोग में 64 का मतलब है कि सभी डेटा प्रकार अब 64 बिट्स हैं (मुझे लगता है कि 64-बिट सी अनुप्रयोगों में एक char अभी भी 8 बिट लंबा है)। –

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