2012-01-31 11 views
11

मेरे पास कई मशीनों (~ 30) पर एक जावा 1.6 एप्लिकेशन तैनात है, और विंडोज सेवा के रूप में शुरू किया गया है।अपने स्टार्टअप के दौरान जावा एप्लिकेशन को स्वचालित रूप से अपग्रेड कैसे करें?

मेरी मुख्य समस्या इन तैनात कलाकृतियों के रखरखाव से संबंधित है: यदि मैं इस एप्लिकेशन का एक नया संस्करण विकसित करता हूं, तो मैं इसे प्रत्येक मशीन पर मैन्युअल रूप से पुन: नियोजित नहीं करना चाहता हूं।

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

इस तंत्र की तुलना मेवेन स्नैपशॉट सत्यापन से की जा सकती है: यदि रिमोट रिपोजिटरी पर SNAPSHOT संस्करण का कोई नया संस्करण है, तो मैवेन इसे चलाने से पहले डाउनलोड करें। ध्यान दें कि एप्लिकेशन स्वयं एक मैवेन रिपोजिटरी (हमारे केस नेक्सस में) पर तैनात किया जाएगा, इसलिए इस Nexus इंस्टेंस के विरुद्ध अपडेट की जांच की जाएगी।

ऐसे स्वचालित एप्लिकेशन अपडेट को लागू करने के लिए मेरे तकनीकी समाधान क्या हैं?

मुझे तकनीकी जानकारी के बारे में या संदर्भ के बारे में अधिक जानकारी के पूछने के लिए ...

धन्यवाद संकोच न करें।


संपादित: पीटर Lawrey द्वारा कहा गया है, मैं जावा वेब प्रारंभ उपयोग कर सकते हैं। हालांकि, मैं विंडोज़ सेवा के रूप में चलाए जा रहे जावा एप्लिकेशन के भीतर जेडब्ल्यूएस को कैसे एकीकृत कर सकता हूं?

+0

यह जावा समस्या नहीं है। तैनाती प्रबंधन के अधिक। – Santosh

+0

जबकि वाक्यांश के रूप में यह वास्तव में जावा समस्या नहीं है, मुझे नहीं लगता कि समस्या का थोड़ा और सामान्य संस्करण (यह सुनिश्चित करना कि संस्करण शुरू करना हमेशा सबसे हालिया संस्करण उपलब्ध है) जावा में हल नहीं किया जा सकता है। नेटवर्क वर्ग लोडिंग का एक ऑफशॉट, शायद? –

+0

@ सैंटोश हाँ और नहीं। विंडोज़ - विशेष रूप से जिनके लिए हम यहां उपयोग कर रहे हैं - ऐसी प्रक्रिया को कम करने के लिए आवश्यक टूल प्रदान नहीं करते हैं। मुझे लिनक्स, एसएसएच, या कुछ बैश स्क्रिप्ट दें, और मैं खुश रहूंगा :) – romaintaz

उत्तर

4

मैं Java Web Start

+0

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

1

पर एक सामान्य तकनीक देखो यह एक लांचर का उपयोग करने के लिए है जाएगा। चरण इस तरह कुछ हैं:

  1. लॉन्चर प्रारंभ करें।
  2. लॉन्चर यह देखने के लिए जांच करता है कि एप्लिकेशन को अपडेट किया जाना चाहिए या नहीं। यदि हां, तो लॉन्चर एप्लिकेशन को अपडेट करता है (मुझे इसके बारे में "अपडेट चरण" के रूप में लगता है)।
  3. अपडेट चरण के बाद, लॉन्चर एप्लिकेशन चलाता है।
संबंधित मुद्दे