2010-08-31 8 views
6

मैं हॉट स्वैप जावा डीबगिंग सुविधा का उपयोग टॉमकैट पर वेब ऐप के साथ करता हूं। कुछ वर्ग हस्ताक्षर परिवर्तन के बाद, मुझे "हॉट कोड प्रतिस्थापन विफल" ग्रहण संवाद मिला - मैं इसे समझता हूं।ग्रहण हॉट कोड बदलें विफल - वेब अनुप्रयोग को पुन: प्रकाशित करें

मुझे इस मामले में क्या करना है एप्लिकेशन को पुन: प्रकाशित करना है (मैं ऐसा कर सकता हूं) और नए तैनात कोड के साथ काम करना चाहता हूं। हालांकि, जब तक मैं सर्वर को पुनरारंभ नहीं करता तब तक डीबगर स्टिल शिकायत करता है। क्योंकि अन्य ऐप्स और लंबी स्टार्टअप मुझे यह नहीं चाहिए।

क्या डीबगर को यह बताने का कोई तरीका है कि नए क्लास संस्करण को पहले से ही एक नए वेबैप क्लासलोडर में पुनः लोड किया गया है और यह जारी रखने के लिए सहेजा गया है?

धन्यवाद।

उत्तर

2

आप जेरेबेल के साथ क्यों प्रयास नहीं करते? जेआरबेल एक जेवीएम जावा एजेंट है जो मौजूदा सर्वर लोडर्स के साथ कक्षाओं को पुनः लोड करने योग्य बनाने के लिए अनुप्रयोग सर्वर के साथ एकीकृत करता है। केवल बदले गए वर्गों को फिर से संकलित किया जाता है और तुरंत चल रहे एप्लिकेशन में पुनः लोड किया जाता है। जेआरबीएल आईडीई में प्लग करता है और सिस्टम बनाता है। कक्षाओं और स्थैतिक संसाधन सीधे कार्यक्षेत्र से लोड होते हैं। http://zeroturnaround.com/software/jrebel/

सादर, एंड्रिया

0

पुराने पीएचडी परियोजना नहीं है। जिस व्यक्ति ने इसे बनाया वह ओरेकल द्वारा लाया गया था लेकिन उसके काम ने इसे जावा 8 में नहीं बनाया और उम्मीद है कि जावा 9 में देखा जाएगा लेकिन जावा 10 में होने की संभावना अधिक है। जावा 8 के लिए इसका एक नया संस्करण है। मैंने अभी तक कोशिश की है। अतिरिक्त जानकारी के लिए

मेरे मूल प्रश्न: Advanced Code Hot Swapping in JDK 8?

और Github पर परियोजना पेज: https://github.com/dcevm/dcevm

यह आप गर्म लगभग किसी भी वर्ग परिवर्तन कभी के बाद JDK को पुन: प्रारंभ करने से मुक्त कराने के साथ की जगह ले सकता

। (स्थिर objets और singletons के लिए दुष्प्रभावों के बगल में, लेकिन यह तार्किक होगा)

0

क्या आपने सर्वर विकल्प का प्रयास किया - प्रकाशन के साथ प्रकाशन के बिना मॉड्यूल की सेवा करें?

Server Options
Publishing

भी नहीं यकीन है कि आप अन्य एप्लिकेशन के बारे में क्या कह रहे हैं।

+0

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

+0

बदलते हैं तो स्वचालित रूप से प्रकाशित होने के लिए कभी प्रकाशित नहीं होते हैं, कृपया ध्यान दें कि "प्रकाशन के बिना मॉड्यूल की सेवा करें" –

+0

हालांकि यह केवल वेबकंटेंट फ़ोल्डर के अंदर संसाधनों के लिए था, जावा क्लास के लिए नहीं –

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