मैं स्प्रिंग लोडेड JVM एजेंट का उपयोग करके अपने विकास के माहौल पर काम करने में कामयाब रहा हूं । जबकि मैं स्प्रिंग वेब एप्लिकेशन विकसित करता हूं, उस प्रोजेक्ट के विवरण में उल्लेख है कि यह है
JVM पर चलने वाले किसी भी बायोटेक पर प्रयोग करने योग्य
निम्नलिखित सेटअप का उपयोग करते हुए, मैं एक संलग्न टॉमकैट उदाहरण (सामान्य ग्रहण WTP विधि) को स्वचालित रूप से प्रकाशित करने के लिए परिवर्तन प्राप्त करने में सक्षम था। मैं स्प्रिंग टूल सूट का उपयोग कर रहा हूं 3.7.3 ग्रहण मंगल पर आधारित है ।.2 (4.5.2)।
- उनके Github प्रोजेक्ट से लोड किए गए स्प्रिंग का नवीनतम रिलीज़ JAR डाउनलोड करें । यह स्प्रिंगलोडेड-1.2.5.RELEASE.jar के साथ परीक्षण किया गया है।
- सामान्य रूप में ग्रहण में एक टॉमकैट सर्वर सेट करें (टॉमकैट 8.0.30 के साथ परीक्षण किया गया)
- एक्लिप्स में टॉमकैट सर्वर का कॉन्फ़िगरेशन पृष्ठ खोलें ("सर्वर" टैब के भीतर सर्वर उदाहरण पर डबल-क्लिक करें)।
- "सर्वर विकल्प" अनुभाग में, "मॉड्यूल ऑटो डिफ़ॉल्ट रूप से पुनः लोड करें" को अनचेक करें।
- नोट: यदि आपके पास वेब मॉड्यूल पहले से ही सर्वर में जोड़े गए हैं, तो आपको "मॉड्यूल" टैब (कॉन्फ़िगरेशन पृष्ठ विंडो के नीचे) के माध्यम से उन पर व्यक्तिगत रूप से "ऑटो रीलोड" को अक्षम करना पड़ सकता है।
- "सामान्य जानकारी" अनुभाग में, "ओपन लॉन्च कॉन्फ़िगरेशन" पर क्लिक करें
- "तर्क" टैब में, "VM तर्क" के अंत में निम्नलिखित जोड़ें:
-javaagent:/path/to/downloaded/springloaded-1.2.5.RELEASE.jar -noverify
- प्रोजेक्ट की
.classफ़ाइलों के अलावा JAR को देखने के लिए सक्षम करने के लिए , इस मुद्दे की टिप्पणियों के-Dspringloaded=watchJars= अनुसार VM तर्क को कॉन्फ़िगर करें ।
सर्वर शुरू करें और हमेशा की तरह डायनामिक वेब एप्लिकेशन प्रोजेक्ट प्रकाशित करें। फिर से, मैं स्प्रिंग वेब एप्लिकेशन के साथ इसका परीक्षण करने में सक्षम था। उदाहरण के लिए, @Controller क्लासेस में मोडिफाई कोड, जोड़ / घटाना, आदि को फाइल को सेव करने के बाद तुरंत लागू किया गया और एक्लिप्स ने बिल्ड क्लास को बदला और प्रकाशित किया। अंत में, स्प्रिंग लोडेड प्रोजेक्ट के अक्सर पूछे जाने वाले प्रश्न अनुभाग में कुछ मामलों का उल्लेख किया गया है जहां चीजें फिर से लोड नहीं होंगी, इसलिए उन सर्वर / एप्लिकेशन को पुनरारंभ करने की आवश्यकता होगी। लेकिन वे अपवाद अक्सर कम होते हैं।
एक और ध्यान दें: यह एम्बेडेड Pivotal tc सर्वर या VMware vFabric tc सर्वर के साथ काम नहीं करता है जो STS के साथ आता है। उन सर्वरों के लिए, "सक्षम जावा एजेंट-आधारित रीलोडिंग (प्रायोगिक)" विकल्प है, लेकिन वह स्प्रिंग लोड किए गए 1.2.0 पुराने रिलीज का उपयोग करता है, जो मेरे लिए काम नहीं करता था।