2011-07-29 9 views
9

के साथ मेरा आवेदन जार वितरित करें मैं जेआरई के साथ अपना आवेदन जार कैसे वितरित कर सकता हूं? मैं अपने निष्पादन योग्य जार को launch4j का उपयोग करके exe में बना देता हूं।एक जेआरई

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

मैं समझता हूं कि अगर मैं अपने आवेदन के साथ पूर्व स्थापित जेआरई देता हूं, तो ऐसा होगा। मैं launch4j में जेआरई टैब भी देखता हूं, लेकिन मुझे नहीं पता कि मैं कौन सा पथ दूंगा। This लिंक मैं भी देखता हूं, लेकिन कोई प्रक्रिया या उपयोगी लिंक नहीं दिया जाता है जहां कुल प्रक्रिया स्पष्ट रूप से परिभाषित की जाती है।

कृपया कुछ निश्चित उत्तर दें। यदि आपका उत्तर launch4j पर आधारित है तो मैं पसंद करूंगा।

उत्तर

5

आप अपना आवेदन कैसे वितरित करते हैं? क्या आपके पास इंस्टॉलर है?

यदि आपके पास इंस्टॉलर है, तो आप इसके साथ किसी भी जेरे को बंडल कर सकते हैं और इसका उपयोग करने के लिए launch4j को कॉन्फ़िगर कर सकते हैं।

क्या मैं आपके उपयोग के मामले से बनाना किया:

  1. एक निर्देशिका बनाएँ, जैसे सी: \ temp सी से अपने जेडीके को कॉपी करें: \ प्रोग्राम फ़ाइलें \ जावा \ jdk1.6.0_23 से सी: \ temp \ myownjdk1.6.0_23 कॉन्फ़िगर करें
  2. लॉन्च 4j मेरे जेडीके का उपयोग करने के लिए: जेआरई टैब में, "myownjdk1.6.0" दर्ज करें _23 "
  3. बंडल जेआरई पथ और मैंने" केवल निजी जेडीके रनटाइम का उपयोग करें " - हालांकि मुझे यकीन नहीं है कि यह वास्तव में आवश्यक है या नहीं।

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

<launch4jConfig> 
    <dontWrapJar>false</dontWrapJar> 
    <headerType>gui</headerType> 
    <jar>C:\temp\demoapp.jar</jar> 
    <outfile>C:\temp\thing.exe</outfile> 
    <errTitle></errTitle> 
    <cmdLine></cmdLine> 
    <chdir></chdir> 
    <priority>normal</priority> 
    <downloadUrl>http://java.com/download</downloadUrl> 
    <supportUrl></supportUrl> 
    <customProcName>false</customProcName> 
    <stayAlive>false</stayAlive> 
    <manifest></manifest> 
    <icon></icon> 
    <jre> 
    <path>myownjdk1.6.0_23</path> 
    <minVersion></minVersion> 
    <maxVersion></maxVersion> 
    <jdkPreference>jdkOnly</jdkPreference> 
    </jre> 
</launch4jConfig> 
+0

मैं वही काम करता हूं और यह काम कर रहा है, लेकिन अगर मैं अपनी जावा (जेआर) निर्देशिका को अपने test.exe के साथ नहीं देता हूं तो यह नहीं मिलेगा मैं इसे और अधिक गतिशील बनाना चाहता हूं गेम का मतलब है कि अगर मैं उस पर क्लिक करता हूं तो यह एक एक्सई होगा, यह जेरे निकालेगा और कुछ डायरेक्टरी को विकल्प चुनने देगा और शॉर्टकट विकल्प बनाने के लिए इसे लॉन्च 4j का उपयोग करना संभव है। कृपया उत्तर दें। – moin

+0

ठीक है कि आपका इंस्टॉलर होना चाहिए: उपयोगकर्ता को अपने पैकेज (yourapp.exe, yourapp.jar और yourjdk-directory) को अपनी पसंद की निर्देशिका में निकालने दें। यह जेआरई को yourapp.exe से संबंधित रखेगा। इनमें से एक मदद कर सकता है: http://java-source.net/open-source/installer- जनरेटर launch4j यह करता है कि यह क्या करना चाहिए, लेकिन यह पूर्ण तैनाती/इंस्टॉलर पैकेज नहीं है। – PhilW

+0

हाँ.हाँ आप वास्तव में सही हैं, मैं यह पूछना चाहता हूं कि यदि आप मुझे लॉन्च 4j या अन्य ओपनसोर्स इंस्टॉलर में यह विकल्प जानते हैं तो आप मुझे कुछ नाम दे सकते हैं। असल में मैं अपना एप्लिकेशन गेम या अन्य सॉफ़्टवेयर जैसे बनाना चाहता हूं, जहां एक एक्सई है आप इस पर क्लिक करेंगे, यह स्वचालित रूप से सभी निकालेगा और इसका उपयोग कर सकता है। – moin

2

एक बेहतर रणनीति एप्लिकेशन लॉन्च करने के लिए है:

यह मेरा विन्यास फाइल है। Java Web Start का उपयोग कर। जावा का एक उपयुक्त न्यूनतम संस्करण उपलब्ध है यह सुनिश्चित करने के लिए deployJava.js का उपयोग करें। उपयोगकर्ता के पास पहले से ही एक उपयुक्त जेआरई स्थापित हो सकता है (इसलिए कोई डाउनलोड आवश्यक नहीं है), और ऐप को अनइंस्टॉल करने के बाद वे अन्य जावा एप्लिकेशन और एप्लेट्स के लिए वहां होंगे।

यह आपकी कुछ निर्दिष्ट आवश्यकताओं में फिट नहीं है, लेकिन यह समग्र रूप से एक बेहतर विकल्प है।

+0

क्या डाउन-मतदाता साझा करना चाहते हैं कि यह उत्तर उनके लिए अस्वीकार्य क्यों था? –

+0

+1 भले ही यह एकदम सही फिट न हो, [टैग: जावा-वेब-स्टार्ट] कम से कम तैनाती के लिए माना जाना चाहिए। – trashgod

+0

जावा वेबस्टार्ट पूर्व-जावा की आवश्यकता है: यह चिकन और अंडे की समस्या जैसा दिखता है और यह दिए गए प्रश्न के लिए उपयुक्त नहीं है। – Panayotis

1

आप BitRock InstallBuilder भी देख सकते हैं।

हम जावा के लिए बहुत अच्छा समर्थन प्रदान करते हैं - दोनों यह पता लगाते हैं कि यह मौजूद है या साथ ही जेआरई के आसान समावेशन और लॉन्चर बाइनरी का निर्माण भी है।

आप यहाँ अधिक जानकारी प्राप्त कर सकते हैं: http://installbuilder.bitrock.com/docs/installbuilder-userguide/ar01s17.html#_bundling_a_jre

और जावा घटक/JRE फ़ाइलें: http://installbuilder.bitrock.com/java/

ऊपर के लिंक से फाइल के साथ

, यह अपनी परियोजना में कुछ चर की स्थापना के रूप में सरल है और इंस्टॉलर काम करेगा।

यह मुफ़्त नहीं है, लेकिन यदि आपकी परियोजना ओपन सोर्स है, तो आप एक मुक्त ओपन सोर्स लाइसेंस के लिए आवेदन कर सकते हैं जिसका उपयोग आप अपने आवेदन के लिए इंस्टॉलर बनाने के लिए कर सकते हैं।

अस्वीकरण: मैं बिट्रॉक इंस्टॉलबिल्डर के डेवलपर्स में से एक हूं, इसलिए मैं पक्षपाती हूं।

0

मैंने लॉन्च 4j का अपना संस्करण बनाया है जो आवश्यक जेआरई को स्वचालित रूप से डाउनलोड करने और इंस्टॉल करने की अनुमति देता है - अनुपस्थित - (यह डाउनलोड करने के लिए प्रगति दिखाता है, अभी तक स्थापित करने के लिए कोई प्रगति नहीं है और जेआरई इंस्टॉलर को अन्य निर्देशिका में डाउनलोड करने का कोई विकल्प नहीं है इंस्टॉलर की कार्यशील निर्देशिका - यदि कोई इसमें रूचि रखता है तो मैं इस कार्यक्षमता को जोड़ सकता हूं)। अपने विकल्पों को सेट करने के लिए बस लॉन्च 4j के "जेआरई" टैब पर जाएं। साथ ही, यह केवल जीयूआई स्थापना के लिए है, न कि कंसोल के लिए। यहां आप इसे प्राप्त कर सकते हैं: https://github.com/maztan/launch4j_auto_jre_download

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