मैं जावा में प्रोग्रामिंग कर रहा हूं, और मुझे वास्तव में नेटबीन्स और अन्य आईडीई में सुविधा का आनंद मिलता है जो आपको इसे पुनरारंभ किए बिना डिबगिंग करते समय अपने प्रोग्राम में बदलाव करने की अनुमति देता है। मैं जावा में एक एप्लीकेशन लिख रहा हूं जो लाभान्वित होगा अगर मैं इसे फिर से शुरू किए बिना फ्लाई पर अपडेट कर सकता हूं। मुझे एक दूसरा जार रखने का विचार था जिसे मैं अद्यतन करते समय चला सकता था, जो आईडीई के समान काम करने में सक्षम होगा, लेकिन मुझे कोई संकेत नहीं है कि वे कोड कैसे स्वैप करते हैं। क्या कोई मुझे प्रबुद्ध कर सकता है? धन्यवाद!हॉट कोड स्वैपिंग वर्क्स कैसे काम करता है
उत्तर
आईडीईई जैसे ग्रहण, जब डीडीगिंग जेडीआई (जावा डीबग इंटरफ़ेस) का उपयोग करते हैं। यह जावा एपीआई का एक संग्रह है जो आपको बाहरी जावा वर्चुअल मशीनों पर बनाने/संलग्न करने की अनुमति देता है। इसका उपयोग जावा एजेंट के संयोजन के साथ किया जा सकता है जिसका उपयोग वर्चुअल मशीन में कक्षाओं को फिर से परिभाषित करने के लिए किया जा सकता है। डीबग मोड के दौरान क्या ग्रहण करता है वह आपके कोड के साथ चलने वाली एक नई वर्चुअल मशीन बनाता है। जब आप एक संपादन और पुन: संकलित करते हैं; ग्रहण तब नए बाइट-कोड को भेजकर, आपके द्वारा बदली गई कक्षाओं को फिर से परिभाषित करने के लिए जेवीएम को बताता है।
आप JDI documentation पढ़ सकते हैं, और विशेष रूप से Java instrument class (जिसे क्लास ट्रांसफार्मर को कॉन्फ़िगर करने के लिए उपयोग किया जाता है) पर एक नज़र डालें। यहां setting up a JDI launcher पर एक संबंधित प्रश्न है (एक नया JVM लॉन्च करें)।
मैं वास्तव में आज भी उसी काम के बारे में सीख रहा था। [इस] (
http://java.dzone.com/articles/5-jrebel-features-you-couldn%E2%80%99t
- 1. एक्सकोड में हॉट कोड स्वैपिंग?
- 2. एरलांग में कोड हॉट स्वैपिंग
- 3. एर्लांग हॉट कोड स्वैपिंग गतिविधि के बीच में कैसे काम करता है?
- 4. जेवीएम हॉट स्वैपिंग
- 5. पायथन रनिंग प्रोग्राम का हॉट-स्वैपिंग
- 6. वैरिएबल स्वैपिंग आंतरिक रूप से कैसे काम करता है?
- 7. बॉयलरप्लेट कोड, हॉट कोड और हॉट स्पॉट क्या है?
- 8. वर्क्स
- 9. 'हॉट कोड प्रतिस्थापन' काम नहीं कर रहा है - ग्रहण JBoss
- 10. मैं जेबॉस में जावा "हॉट कोड प्रतिस्थापन" कैसे काम करूं?
- 11. क्या Dalvik (Androids JVM) हॉट कोड को प्रतिस्थापित करता है?
- 12. कौन सी प्रोग्रामिंग भाषाएं हॉट कोड स्वैपिंग और/या सैंडबॉक्सिंग का समर्थन करती हैं?
- 13. कोड के हॉट-स्वैपिंग का उपयोग करके क्लोजर के साथ वेब-एप
- 14. कैसे लूप के लिए रिकर्सन वर्क्स के अंदर काम करता है
- 15. यह सी कोड कैसे काम करता है?
- 16. यह सी कोड कैसे काम करता है?
- 17. यह असुरक्षित कोड कैसे काम करता है?
- 18. आर पैकेज को अद्यतन करने के लिए सुरक्षित तरीका - "हॉट-स्वैपिंग" संभव है?
- 19. डॉकर और हॉट कोड स्वैप पर एरलांग/एलिक्सीर
- 20. कैसे काम करता है?
- 21. कैसे काम करता है
- 22. एडवेंचर वर्क्स स्पष्टीकरण
- 23. बिटबैक निर्भरता स्रोत कोड के लिए कैसे काम करता है?
- 24. Google Analytics कोड, यह कैसे काम करता है?
- 25. सी कोड के साथ असेंबली इनलाइन कैसे काम करता है?
- 26. सुडोकू वैधता जांच एल्गोरिदम - यह कोड कैसे काम करता है?
- 27. "आईई 6 और नहीं" कोड कैसे काम करता है?
- 28. स्वैपिंग मान
- 29. सीटीएफई कैसे काम करता है?
- 30. प्रतिनिधि कैसे काम करता है?
मैं पढ़ विचार करूँगा http://stackoverflow.com/questions/7989135/is: मैं और अधिक जटिल hotpush मामलों के कुछ ही पीछे कार्यप्रवाह समझने में इस लेख बहुत उपयोगी पाया -यह-संभव करने के लिए प्रोग्राम के रूप में-संकलन जावा-स्रोत-कोड-इन-स्मृति-केवल)। स्वीकृत उत्तर में किसी भी तरह से शायद आपकी जरूरतों के अनुरूप होगा। – ChiefTwoPencils
जेडीडब्लूपी, और विशेष रूप से [जेडीआई] (http://docs.oracle.com/javase/7/docs/technotes/guides/jpda/architecture.html#jdi) पर एक नज़र डालें। –