2011-01-29 14 views
25

संभव डुप्लिकेट:
Modifying a file inside a jarमैं .jar फ़ाइल को कैसे संपादित कर सकता हूं?

तो मैं इस पर एक .class फ़ाइल के साथ एक जार फ़ाइल है। मुझे बस फाइल में कुछ शब्द बदलने की जरूरत है। मुझे किस प्रोग्राम का उपयोग करना चाहिए?

मैं चाहता हूं कि यह मेरे फोन के लिए काम करे।

+3

क्या मतलब है कि आपको अपनी '.class' फ़ाइल में कुछ "दुनिया" (शब्द?) को बदलने की आवश्यकता है? आप समझते हैं कि ऐसी फाइलें बाइनरी हैं, है ना? –

+4

वे सिर्फ ज़िप फ़ाइलें हैं, उन्हें किसी भी ज़िप प्रोग्राम का उपयोग करके निकाला जा सकता है, इसे '.zip' पर पुनर्नामित करें यदि आप इसे सीधे नहीं कर सकते हैं। लेकिन यह आपकी मदद नहीं करेगा, क्योंकि कोड उनमें नहीं है, जावा एक संकलित भाषा है - .class फ़ाइलों को संपादित करना बहुत आसान है। – Orbling

उत्तर

23

यहाँ मैं क्या किया है:

  • WinRAR
  • का उपयोग कर निकाले फ़ाइलें निकाली गई फ़ाइलों
  • WinRAR के साथ मूल JAR फ़ाइल खोला
  • 'ऐड' बटन को बदलने के लिए प्रयोग किया जाता है करने के लिए अपने परिवर्तन किए फाइलें जिन्हें मैंने

संशोधित किया है। मैंने इसे अपने नोकिया के साथ परीक्षण किया है और यह मेरे लिए काम कर रहा है।

+0

इसका परीक्षण करने वाला है, लेकिन क्या आप एक अच्छा क्लास संपादक जानते हैं? – user594568

+0

Sourceforge – Vaibhav

+0

पर कक्षा संपादक का प्रयास करें ऐप इंस्टॉल नहीं किया गया था और इसलिए मैं इसे शुरू नहीं कर सकता .. – user594568

3

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

http://classeditor.sourceforge.net/

+0

मुझे लगता है कि आप एक जार खोलने के बारे में जानते हैं क्योंकि आप जानते हैं कि इसमें केवल एक वर्ग फ़ाइल है। –

+0

मैं कैसे संपादित करूं, मैं पूरी चीज देखता हूं लेकिन मुझे नहीं पता कि विंडोज़ में स्ट्रिंग्स – user594568

+0

को कैसे संपादित किया जाए, मैंने क्लास एडिटर जार के साथ एक ही निर्देशिका में एक बैच फ़ाइल बनाई, जिसमें 'प्रारंभ javaw -jar% ~ dp0ce.jar % * ' –

20

एक जार फ़ाइल एक ज़िप संग्रह है। आप यह 7zip का उपयोग कर (एक महान सरल उपकरण अभिलेखागार को खोलने के लिए)। तुम भी इसके विस्तार को बदल सकते हैं ज़िप और उपयोग जो कुछ फ़ाइल अनज़िप करने के लिए निकाल सकते हैं।

अब आप अपने वर्ग फ़ाइल है। कोई आसान तरीका वर्ग संपादित करने के लिए नहीं है फ़ाइल, क्योंकि क्लास फाइलें बाइनरी हैं (आपको वहां स्रोत कोड नहीं मिलेगा। शायद कुछ तार, लेकिन जावा कोड नहीं)। अपनी कक्षा फ़ाइल को संपादित करने के लिए आप classeditor जैसे टूल का उपयोग कर सकते हैं।

आपके पास कक्षाओं में हार्ड-कोडेड का उपयोग कर रहे सभी स्ट्रिंग हैं। तो यदि एकमात्र चीज जिसे आप बदलना चाहते हैं तो कुछ तार हैं जो आप क्लासडिटर का उपयोग किए बिना कर सकते हैं।

+1

मैं स्ट्रिंग को कैसे संपादित करूं, प्रोग्राम मुझे नहीं जाने देता है। – user594568

+1

@user: क्या आप विंडोज का उपयोग कर रहे हैं? नोटपैड के साथ क्लास फ़ाइल खोलें, स्ट्रिंग के लिए खोजें, इसे बदलें और सहेजें। फिर क्लास फ़ाइल को संग्रह में वापस रखें। – snakile

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