.Jar फ़ाइल को चलाते समय मैं आसानी से कैसे ऊपर उठता हूँ?


8

इंस्टॉलर जार फ़ाइल को चलाने की कोशिश करते समय, मुझे यह कहते हुए एक त्रुटि हो रही है कि प्रोग्राम फ़ाइल फ़ोल्डर के तहत एक निर्देशिका बनाने के लिए लिखने की पहुंच से इनकार किया गया है।

राइट क्लिक करें -> प्रशासक के रूप में जार फ़ाइलों पर उपलब्ध नहीं है (मुझे लगता है क्योंकि यह Java.exe है जो उन्हें खपत करता है - वे खुद को शेल द्वारा सीधे निष्पादन योग्य नहीं माना जाता है)।

एक .Jar फ़ाइल को ऊँचाई से चलाने का सबसे तेज़ और सरल तरीका क्या है?

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

जवाबों:


6

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

एक बार जब आप उन्हें डाउनलोड कर लेते हैं, तो उन्हें एक फ़ोल्डर में निकालें और उन्हें elevate.cmdऔर elevate.vbsJAR फ़ाइल के साथ फ़ोल्डर में कॉपी करें । फिर, .cmdनिम्नलिखित सामग्री के साथ एक विस्तार के साथ एक नया बैच स्क्रिप्ट लिखें :

elevate cmd /c start "%CD%\installer.jar"

यह उनके सिस्टम पर ऐसी फाइलों के लिए डिफ़ॉल्ट हैंडलर के साथ JAR फाइल लॉन्च करेगा ( startकमांड का उपयोग करके cmd)। %CD%स्क्रिप्ट की वर्तमान कार्यशील निर्देशिका को इंगित करता है, और आवश्यक है क्योंकि एलिवेटेड कमांड लाइन शुरू हो जाएगी c:\windows\system32

यदि, किसी कारण से जावा को JAR फ़ाइलों के लिए डिफ़ॉल्ट हैंडलर के रूप में ठीक से कॉन्फ़िगर नहीं किया गया है, तो यह विफल होगा। यदि आप जावा को सभी प्रणालियों पर एक ही स्थान पर गिन सकते हैं, तो आप इसके बजाय इसे इस तरह से कर सकते हैं:

elevate "c:\Program Files\Java\jre\bin\java.exe" -jar "%CD%\installer.jar"

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

उन्नयन स्क्रिप्ट, अपनी स्क्रिप्ट और इंस्टॉलर फ़ाइलों को एक सेल्फ-एक्सट्रैक्टिंग संग्रह में शामिल करें जो स्क्रिप्ट लॉन्च करता है और आप इसे एक अच्छी छोटी .exeफ़ाइल में लपेट सकते हैं । ( 7-ज़िप इस तरह के अभिलेखागार बनाने के लिए एक महान खुला स्रोत उपकरण है।)

एलिवेशन पॉवरटॉयस की अधिक जानकारी के लिए, लिंक किए गए लेख या डाउनलोड के साथ शामिल README फाइल से परामर्श करें।


बहुत बढ़िया जवाब :) धन्यवाद! मैं इसे स्वीकार करने के लिए इंतजार करने जा रहा हूं, इसलिए शायद सवाल / आपके उत्तर को कुछ और ट्रैफ़िक मिले (मुझे लगता है कि यह इस तरह से काम करता है?)
मेरलिन मॉर्गन-ग्राहम

@Patches, ऐसा करने के लिए गैर 3-पार्टी तरीका क्या है?
पचेरियर

@Pacerier यहां तक ​​कि विंडोज 10 में अभी भी कमांड लाइन से ऊपर उठाने की कोई अंतर्निहित विधि नहीं है।
पैच

2

मेरे पास ऐसा करने का अवसर है, और पाया कि एलीवेशन पॉवरटॉयल्स को डाउनलोड और इंस्टॉल किए बिना सबसे आसान तरीका है, एक व्यवस्थापक के रूप में cmd.exe को चलाना और फिर java.exe -jar 'installer.jar'कमांड लाइन से कॉल करना था। बेशक, मुझे पहले java.exe ढूंढना था, लेकिन इसमें लंबा समय नहीं लगा ...


2
वास्तव में आपको केवल कॉल करने की आवश्यकता है installer.jar। यह स्वचालित रूप से "प्रोग्राम के साथ खुले" डिफ़ॉल्ट का पता लगाएगा, जिसे पहले ही सेट किया जा चुका है java.exe। (यदि यह नहीं था, तो डबल-क्लिक करना .jar इसे पहली जगह पर नहीं चलाएगा।)
पेसियर
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.