2011-04-01 14 views
14

कुछ प्रश्न इस तरह हैं: मैं अपने जावा ऐप को एक्सई में कैसे पैकेज कर सकता हूं? यह वह नहीं है जिसे मैं पूछने जा रहा हूं।जावा एप्लिकेशन लॉन्च करने के लिए छोटे exe

मैं ऐसा करके अपने आवेदन शुरू कर सकते हैं निम्नलिखित:

java -jar myApp.jar 

कि पूरी तरह से काम करता है (मशीन मान लिया जाये कि जावा 1.5.0 है या>)

अब मैं क्या होने की सोच रहा था एक MyApp है .exe फ़ाइल।

  1. जांच अगर जावा मशीन और उसके संस्करण पर स्थापित किया गया है:

    क्या यह करना होगा निम्नलिखित है। यदि जावा वहां नहीं है तो यह कहने के लिए एक संवाद को संकेत देगा: "आपको myApp चलाने के लिए जावा इंस्टॉल करने की आवश्यकता है" ठीक उसी तरह eclipse.exe करता है अगर उसे जावा नहीं मिलता है। फिर यह समाप्त हो जाएगा।

  2. यदि जावा वहां है, तो javaw -jar app.jar कमांड को प्रभावी ढंग से चलाएं और प्रक्रिया को स्पॉन करें।

कोई विचार?

+1

+1, अच्छा सवाल। – aioobe

+0

क्या आप एक साधारण बैच स्क्रिप्ट के साथ यह आसान नहीं कर सकते हैं जो जावा-वर्जन जांचता है और यदि कोई उपयोगी उत्तर प्राप्त होता है तो आप अपना char चला सकते हैं? – RoflcoptrException

+0

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

उत्तर

0

मैंने इस प्रश्न को बहुत लंबे समय तक अनुत्तरित छोड़ दिया। मुझे लगता है कि यह कहना उचित है कि ऐसा करने का कोई आसान तरीका नहीं है। जेएसमुथ एक अच्छा उपकरण की तरह दिखता है, लेकिन यह काफी सीमित है। ग्रहण ने अपना स्वयं का समाधान लिखा है और जावा में लिखे गए कई अन्य समाधान exe के रूप में तैनात हैं।

0

उस बैच स्क्रिप्ट की तरह कुछ काम नहीं करेगा?

@echo off 

for /f %%j in ("java.exe") do (
    set JAVA_HOME=%%~dp$PATH:j 
) 

if %JAVA_HOME%.==. (
    @echo java.exe not found 
) else (
    java -jar myApp.jar 
) 

इस सवाल से: Discover from a batch file where is Java installed?

+1

chacko को exe फ़ाइल की आवश्यकता है। उदाहरण के लिए .jar या .bat के साथ समाप्त होने वाली कुछ अजीब निष्पादन योग्य फ़ाइल की बजाय उपयोगकर्ता exe फ़ाइल के साथ अधिक आरामदायक महसूस करते हैं। – Stephan

+0

हाँ यह सच है, मैं बस एक विकल्प दिखाना चाहता हूं। (हालांकि आप एक्सपे रैपर के लिए बल्ले का उपयोग कर सकते हैं;)) –

+0

अपने एक्सई रैपर को एक अच्छे इंस्टॉल प्रोग्राम के अंदर रखना न भूलें और आखिरकार कुछ संग्रह फ़ाइल में इंस्टॉल प्रोग्राम को लपेटने के लिए मत भूलें ^^ – Stephan

3

मैं एक ऐसी ही बात NSIS और Launch4j का उपयोग किया गया है। एनएसआईएस आपको कुछ विज़ार्ड विंडो इत्यादि के साथ एक सेटअप स्क्रिप्ट बनाने की अनुमति देता है, लॉन्च 4j आपको निष्पादन योग्य जार को एक exe फ़ाइल में लपेटने की अनुमति देता है। मैंने दोनों को स्विंग एप्लिकेशन को 4000 उपयोगकर्ताओं को वितरित करने के लिए उपयोग किया है। अधिक सटीकता के लिए, मुझे यह जांचना था कि सेटअप शुरू करने से पहले जावा 1.5 या बाद में स्थापित किया गया था।

7

JSmooth बिल्कुल यही करता है।

+0

क्या कोई उस की गुणवत्ता पर टिप्पणी कर सकता है खुला स्त्रोत ? क्या किसी ने असली इस्तेमाल किया है? – chacko

-1

अपने ऐप को मानना। एक जीयूआई & है आप इसे एक वेब साइट से वितरित कर सकते हैं ..

1) जांचें कि मशीन और उसके संस्करण पर जावा स्थापित है या नहीं। अगर जावा वहां नहीं है तो यह एक संवाद को यह कहने के लिए प्रेरित करेगा: "आपको myApp चलाने के लिए जावा इंस्टॉल करने की आवश्यकता है" जैसा कि eclipse.exe करता है अगर उसे जावा नहीं मिलता है। फिर यह समाप्त हो जाएगा।

.. का प्रयोग करें deployJava.js सुनिश्चित करने के लिए जावा की एक विशेष न्यूनतम संस्करण मौजूद है, तो ..

2) यदि जावा वहाँ है, तो प्रभावी ढंग से आदेश javaw जार app.jar और अंडे चलाने प्रक्रिया।

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

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