मैं जावा जार फाइल के लिए विंडोज इंस्टॉलर कैसे बनाऊं?

Nov 28 2020

मैं अपने जार फ़ाइल के लिए एक विंडोज़ इंस्टॉलर बनाना चाहता हूं। मैं उस लक्ष्य कंप्यूटर पर jre / jdk स्थापित नहीं करना चाहता जिसे मैं तैनात करना चाहता हूं।

मैंने jpackage (जावा 14 का हिस्सा) की कोशिश की और यह मेरे लिए काम नहीं किया। मैंने निम्नलिखित कमांड की कोशिश की:

jpackage --input target/ --name my_pkg --main-jar NtbnsProj.jar --main-class myJFrame --type exe --java-options '--enable-preview'

यह एक my_pkg-1.0.exe उत्पन्न करता है, लेकिन मैं इसे चलाने के लिए प्राप्त नहीं कर सकता।

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

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

मेरा संबंधित लेख देखें: मैं एक जावा पर चलाने के लिए जावा जार फ़ाइल कैसे पैकेज करूं बिना जेआरई स्थापित किए?

जवाब

1 DuncG Nov 28 2020 at 22:31

दोहराएं कि आपका ऐप सीधे चलता है तो जारी रखने से पहले किसी भी समस्या को ठीक करें:

java -cp NtbnsProj.jar myJFrame 

ऐसा लगता है जैसे कि jpackageकाम किया है, और अपने इंस्टॉलर को उत्पन्न किया है my_pkg-1.0.exe। जब आप चलाते हैं my_pkg-1.0.exeकि आपके पास यह फ़ाइल है, तो इसे चलाएं:

C:\Program Files\my_pkg\my_pkg.exe

यदि वह विफल हो जाता है, तो अतिरिक्त तर्कों के साथ jackage को फिर से चलाएं --win-console --app-version 1.1, इससे my_pkg-1.1.exeकंसोल सक्षम हो जाएगा। पुनः स्थापित करना और चलाना C:\Program Files\my_pkg\my_pkg.exeएक उपयोगी त्रुटि संदेश की सूचना दे सकता है जो यह दर्शाता है कि आपका वास्तविक मुद्दा क्या है।

यदि आप --app-versionप्रत्येक बार अपग्रेड नहीं करते हैं , तो विंडोज मौजूदा रिलीज़ 1.0 को अपडेट नहीं करेगा, या आपको उसी संस्करण के री-बिल्ड को फिर से लागू करने से पहले अन-इंस्टॉल करना होगा my_pkg-1.0.exe। यह सिर्फ आपको चेतावनी दिए बिना चलता है और रुक जाता है।

देखें इस पोस्ट कैसे एप्लिकेशन-ver स्वचालित रूप से स्थापित करने के लिए पर।

macdays Dec 03 2020 at 07:31

मुझे यह काम करने के लिए मिला है! मेरे सवाल का जवाब देने में @DuncG बहुत मददगार था। मेरे पास निर्देशिका में अतिरिक्त फ़ाइलों का एक समूह था जहाँ जार फ़ाइल थी, इसलिए मैंने अभी एक नई निर्देशिका बनाई और उसमें केवल NtbnsProj.jar डाला। मैंने तब निम्न कमांड चलाई:jpackage --name Test --input . --main-jar NtbnsProj.jar