2016-09-19 6 views
7

मैं बहुत उलझन में हूँ। मैंने एक * .jar फ़ाइल को सॉफ़्टवेयर के रूप में डाउनलोड किया। तो, मैं इसेकैसे Mac पर एक * .jar फ़ाइल से स्रोत कोड निकालने के लिए?

मैं आदेश jar xf filename.jar

जो *.jar दो और फ़ाइलों और एक *.class फ़ाइल लौटे इस्तेमाल किया देखने के लिए स्रोत कोड निकालने करना चाहते हैं। मैं अभी भी मानक पाठ संपादकों के साथ टर्मिनल में नहीं खोल सकता।

शायद यह खुला स्रोत सॉफ्टवेयर नहीं है? क्या यह देखने का कोई विकल्प है कि यहां क्या किया गया है?

+2

एक .class फ़ाइल जावा ऑब्जेक्ट कोड, * नहीं * स्रोत कोड है। एक जार में कोई स्रोत कोड नहीं होना चाहिए। –

+0

@ जेम्सस्कोक मैं देखता हूं। यह देखने का कोई तरीका नहीं है कि उन्होंने किस कोड को लिखा था? – ShanZhengYang

+0

ऐसा लगता है कि आपने src के बजाय lib डाउनलोड किया है, सामग्री को देखने के लिए jar tf filename.jar का उपयोग करें – chifer

उत्तर

9

रन "java -jar fernflower.jar -dgs=true JarToDecompile.jar DecompiledJar" क्या खुफिया जम्मू & एंड्रॉयड-स्टूडियो Decompiler करता

यह है ।

नोट: फर्नाफ्लॉवर .java फ़ाइलों को .jar फ़ाइल में निकालता है। आप या तो जार फ़ाइल को नियमित ज़िप फ़ाइल के रूप में अनजिप कर सकते हैं (यदि ओएसएक्स पर Archive Utility का आपका संस्करण इसे अनुमति देता है - यह ओएसएक्स सिएरा पर मेरे लिए नहीं करता है लेकिन एल कैपिटन पर काम करता है) या आप jar xf DecompiledJar कर सकते हैं और यह इसे निकालो

उदाहरण (एक आदेश में सभी - कई आदेशों && से विभाजित):

java -jar fernflower.jar -dgs=true JarToDecompile.jar DecompiledJar && cd DecompiledJar && jar xf DecompiledJar.jar && cd ../

+0

'जावा -jar fernflower.jar -dgs = true JarToDecompile .jar DecompiledJar' मुझे प्रश्न – ShanZhengYang

+1

में सटीक उसी जार फ़ाइल के साथ एक उपनिर्देशिका देता है जो आपको उप निर्देशिका में मिली फ़ाइल खोलें। यह सिर्फ एक ज़िप फ़ाइल है जिसमें जावा स्रोत फ़ाइलों का एक गुच्छा शामिल है। – Brandon

+0

मैं एक ज़िप फ़ाइल के रूप में यह नाम बदलने और इसे अनज़िप चाहिए? – ShanZhengYang

2

एक जार फ़ाइल मई स्रोत कोड होते हैं, लेकिन और अधिक सामान्यतः केवल वर्ग फ़ाइलें हैं। क्लास फाइल सामान्य रूप से निष्पादन के लिए होती है, न कि स्रोत निकालने के लिए।

आप स्रोत कोड में वर्ग फ़ाइलों डिकंपाइल सकते हैं, लेकिन decompiled कोड मूल स्रोत कोड के रूप में लगभग के रूप में उपयोगी साबित नहीं होगा।

अगर यह खुला स्रोत है, वापस साइट है जहाँ आप जार फ़ाइलों को डाउनलोड और स्रोत देखने के लिए जाते हैं। यह ज़िप फ़ाइलों में डाउनलोड होने के लिए हो सकता है, यह जार फ़ाइलों को डाउनलोड करने के लिए हो सकता है, और यह किसी भी प्रकार की रिपोजिटरी में हो सकता है, जैसे कि गिट, कि आप सही सॉफ़्टवेयर से कनेक्ट कर सकते हैं।

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