ant - JavaFX एप्लिकेशन को लागू करने का सबसे अच्छा तरीका क्या है, जेआर और आत्म-निहित अनुप्रयोगों और स्थानीय इंस्टॉलर बनाएं




intellij-idea executable-jar (3)

मैं IntelliJ IDEA का उपयोग कर रहा हूँ, और मेरा जावाएफएक्स आवेदन तैनाती के लिए तैयार है I समस्या यह है कि जब मैं जार फाइल उत्पन्न करता हूं, तो यह तब नहीं चलता, जब मैं इसे कमांड लाइन में चलाता हूं, मुझे एक अपवाद मिलता है, हालांकि एफएक्सएमएलएलएडएक्सेप्शन, यद्यपि परियोजना पूरी तरह से मेरे आईडीई में काम कर रही है

चींटी कार्य त्रुटियों के साथ समाप्त होता है, 15 मिनट की इमारत के बाद, मुझे वाकई समझ में नहीं आता कि वास्तव में समस्या क्या है

तो मेरा सवाल है कि जावाएफ़एक्स आवेदन को सही तरीके से लागू करने के लिए सही कदम क्या हैं, कोई भी ट्यूटोरियल या गाइड स्वागत है।


Answers

ओरेकल के पास जावाफक्स 2 और जावा एफएक्स 8 के लिए अपनी वेबसाइट पर पैकेजिंग के बारे में व्यापक गाइड है।

यदि आपको अपनी विशिष्ट समस्या के लिए मदद की ज़रूरत है, तो कोड और आपके द्वारा प्राप्त त्रुटि के स्टैकट्र्रेस पोस्ट करें।


जावा एप्लिकेशन को कई तरह से पैक किया जा सकता है कृपया इसके बारे में सब कुछ जानने के लिए जावा पैकेजिंग अवलोकन के माध्यम से जाएं। एक पैकेजिंग self-contained Java application

ये पैकेज बनाने के लिए अलग-अलग तरीके हैं:

  • अपने javapackager साथ आने वाले javapackager टूल का उपयोग करें
  • जावा एफएएक्स चींटी कार्य
  • एक मैवेन प्रोजेक्ट के लिए जावा एफएक्स मैवेन प्लगइन

स्व-निहित आवेदन एक तरीका है कि आपका एप्लिकेशन कैसे पैक किया जा सकता है और प्लेटफ़ॉर्म विशिष्ट है बंडल में शामिल हैं:

  • आवेदन पैकेज
  • जेआरई की एक निजी प्रतिलिपि

उपलब्ध बंडलों की एक सूची यहां पाई जा सकती है

आइए हम हमारे निपटान पर उपलब्ध विभिन्न उपकरणों की जांच करें और उनका उपयोग कैसे करें:

JavaPackager उपकरण

JavaPackager उपकरण सबसे बुनियादी उपकरण है और किसी भी अतिरिक्त लिपियों को लिखने के बिना, अपने जावा (FX) अनुप्रयोगों को संकलित, पैकेज, हस्ताक्षर और तैनात करने में आपकी सहायता करता है। javapackager.jar फ़ाइल JDK स्थापना की बिन निर्देशिका में स्थित है।

कमांड की सूची, जिसका उपयोग इसके साथ किया जा सकता है, यहां उपलब्ध है

जावा एफएएक्स चींटी कार्य

JavaFX चींटी कार्य आपको अपने प्रोजेक्ट के लिए build.xml फ़ाइल बनाकर अपने एप्लिकेशन को पैकेज करने में सहायता करती है।

आपकी प्रोजेक्ट के लिए एंट स्क्रिप्ट का उपयोग करने के तरीके के उदाहरण यहां मिल सकते हैं

जिन कमानों के लिए इसका उपयोग किया जा सकता है, उनकी सूची यहां उपलब्ध है

JavaFX मेवेन प्लगइन

जावाएफ़एक्स मेवेन प्लगइन मैवेन प्लेटफार्म में जावा एप्लिकेशन को पैकेजिंग के उपयोग का लाभ उठाता है। आप परियोजना के लिए एक प्लगइन जोड़कर अपने मेवेन आधारित जावा एप्लिकेशन को पैकेज कर सकते हैं।

यह प्लग-इन आईएमएचओ, अगर तीन में से easiest से उपयोग करना easiest है यह एक बहुत अच्छी तरह से लिखा, आसान समझने वाला उपकरण है और व्यापक दस्तावेज़ीकरण है।

आगे की पढाई :


कतार में:

this.webView.getEngine().load(getClass().getResource("/data/index.html").toString());

मैं फ़ाइल के पथ को दोबारा जांचने का प्रयास करूंगा। पर अन्य उत्तरों को पढ़ना, ऐसा लगता है कि यह पैकेज रूट के सापेक्ष और या तो अग्रणी '/' के साथ या उसके बिना होना चाहिए। यानी getResource("data/index.html") । लेकिन, फिर, शायद आप getResource() से संबंधित त्रुटियों को देख रहे getResource() ...

मेरा अगला, डीबगिंग उद्देश्यों के लिए, उस भाग को टिप्पणी करना होगा जहां आप JSON लिखते हैं और मैन्युअल रूप से कुछ अच्छे JSON लिखते हैं और इसे वेब व्यू में दिखाने के लिए प्रयास करें। कम चलने वाले हिस्सों, बेहतर। यदि आप इसे अपने पूर्व-लिखित जेएसओएन के साथ काम करने के लिए प्राप्त कर सकते हैं तो आप मान सकते हैं कि जेएसओएन के साथ आप जावा के साथ लिख रहे हैं और फिर इसे HTML पर लोड किया जा रहा है।

संपादित करें: मैंने थोड़ा गहरा खोला। यह फिर से पूरी तरह गलत हो सकता है लेकिन शायद आप जावा से initMap() फ़ंक्शन को मैन्युअल रूप से कॉल करने का प्रयास कर सकते हैं कि आपका वेब ब्राउज़र सामान्य रूप से initMap() कहता है। बटन पर जावाएफएक्स वेबव्यू से जावास्क्रिप्ट फ़ंक्शन को कैसे कॉल करें? कुछ और विवरण है। इसे आजमाएं this.webView.getEngine().executeScript("initMap()"); अपने बटन के साथ JSON संपादित करने के बाद।

2 को एक तरफ के रूप में संपादित करें , यह भी initMap को initMap में विभाजित करने और मानचित्र पर मार्कर सेट करने के लिए मानचित्र बनाने के लिए initMap फ़ंक्शन को समझने का अर्थ हो सकता है। हालांकि यह शायद ही कुछ तोड़ रहा है।





java ant intellij-idea javafx executable-jar