LSOpenURLsWithRole () त्रुटि -10810 के साथ विफल - डाउनलोड किया गया ऐप प्रारंभ नहीं होता है


13

मैं इंटरनेट से डाउनलोड किए गए एप्लिकेशन को चलाने का प्रयास कर रहा हूं (जैसे, Jabref) लेकिन ऐसा लगता है कि यह चुपचाप विफल हो जाता है। जब मैं इसे डबल क्लिक करके खोलने की कोशिश करता हूं, तो कुछ नहीं होता है। जब मैं टर्मिनल का उपयोग करता हूं तो मुझे निम्नलिखित संदेश मिलता है:

LSOpenURLsWithRole () फ़ाइल के लिए त्रुटि -10810 के साथ विफल ... / xxxx.app

मैंने कई सुझाव आजमाए जो मुझे यहां मिले जैसे कि अनुमतियाँ बदलना और Info.plist फ़ाइल को संशोधित करना, लेकिन कुछ भी काम नहीं करता है।

क्योंकि यह एक जावा अनुप्रयोग है, मैंने इसे टर्मिनल का उपयोग करके चलाने की कोशिश की

java -cp "CLASSPATH" MAINCLASS

और यह ठीक काम करता है।

बस यह उल्लेख करने के लिए कि मुझे यह त्रुटि न केवल इस ऐप के साथ मिलती है, बल्कि कुछ अन्य अनुप्रयोगों के लिए भी।

अग्रिम में धन्यवाद।

जवाबों:


7

LSOpenURLsWithRole एक फ़ंक्शन है जिसे प्रोग्राम के साथ फ़ाइल को संबद्ध करने के लिए उपयोग किया जाता है। जिस फ़ाइल पर आप डबल क्लिक कर रहे हैं, वह वास्तव में एक एप्लिकेशन नहीं है, बल्कि एक डेटा फ़ाइल है।

उदाहरण के लिए, टेक्स्ट डॉक्यूमेंट को डबल क्लिक करने पर, TextEdit प्रोग्राम या अन्य संबद्ध ऐप लॉन्च किया जाता है।

आपको यह मानते हुए कि इसे आपके द्वारा स्थापित किया गया है, इसे जावा रनटाइम के साथ जोड़ना होगा।

यदि आप फ़ाइल पर राइट-क्लिक करते हैं और Get Info का चयन करते हैं, तो जानकारी फलक में "Open With:" नामक एक अनुभाग है। इसे जावा रनटाइम पर सेट किया जाना चाहिए।


2

यहां आने वाले किसी भी व्यक्ति के लिए जो इस मुद्दे को गैर-जावा प्रोग्राम के लिए देख रहा है: मुझे एक ही त्रुटि संदेश मिल रहा था जब एक .app फ़ाइल को चलाने की कोशिश की जा रही थी जिसमें एक माच-ओ निष्पादन योग्य है। बंडल के भीतर से निष्पादन योग्य को सीधे चलाने की कोशिश (जैसे Foo.app/Contents/MacOS/bar) ने मुझे एक बहुत बेहतर त्रुटि दी, जिससे मुझे संकेत मिलता है कि मैं एक डायनेमिक निर्भरता याद कर रहा था:

dyld: Library not loaded:/usr/local/opt/qt5/lib/QtWidgets.framework/Versions/5/QtWidgets

यदि आप इस त्रुटि को देख रहे हैं तो कुछ प्रयास करें।


0

मैं इस त्रुटि को जावा प्रोग्राम के साथ भी सामना कर रहा था जिसे मैं तैनात करने की कोशिश कर रहा था। मुझे अपने दूसरे मैक पर काम करने के लिए नहीं मिला: 10.11.6। मैंने उत्तर के लिए हर जगह देखा, लेकिन कभी भी एक नहीं मिला, इसलिए मैं इसे दूसरों के लाभ के लिए यहां डाल रहा हूं। सिस्टम कंसोल लॉन्च करके, मैंने त्रुटि संदेश की खोज की कि "ओपन" प्रोग्राम बंडल कंटेंट्स में "JavaApplicationStub" प्रोग्राम को नहीं ढूंढ सका। समस्या यह है कि, मेरा बंडल लॉन्च करने के लिए "JavaAppLauncher" का उपयोग कर रहा था। मैं पुराने Apple JarBundler को Oracle AppBundler के उपयोग से बदल गया था ताकि मैं ऐप पर हस्ताक्षर कर सकूं, और लॉन्च प्रोग्राम का नाम अलग है। यहाँ कुंजी यह है कि नया बंडल (संस्करण 7.1.1) पुराने वाले संस्करण (संस्करण 7.1.0) की जगह ले रहा था, और इसमें एक ही आवेदन नाम था। पुराने वाले ने JavaApplicationStub को लॉन्च करने के लिए उपयोग किया था।

ऐसा प्रतीत होता है कि कार्यक्रम के लिए Info.plist संपत्तियों को कैश किया गया था, और यह नए बंडल लॉन्च करने के लिए बासी मूल्यों का उपयोग कर रहा था। पता नहीं है कि लॉगआउट या रिबूट पर कैश को मंजूरी दी गई है, या यदि यह ओएस एक्स के नए संस्करणों में तय किया गया है, लेकिन मुझे यह काम सभी अंत उपयोगकर्ताओं के लिए सुचारू रूप से करना होगा।

मुझे प्रोग्राम के नाम में संस्करण संख्या को शामिल करके समस्या का सामना करना पड़ा।

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.