2010-02-04 9 views

उत्तर

10

JarFile के साथ फ़ाइल खोलें और फिर Manifest प्राप्त करने के लिए getManifest() पर कॉल करें। उसके बाद आप उचित रूप से विशेषताओं तक पहुंच सकते हैं।

+0

यह और भी लचीला है। धन्यवाद! – er4z0r

15

MANIFEST.MF में कई मान प्रोग्रामर रूप से जार फ़ाइल को ढूंढने और/या खोलने के बिना प्रोग्राम किए जा सकते हैं।

वर्ग java.lang.PackageImplementationTitle, ImplementationVendor, ImplementationVersion, SpecificationTitle, SpecificationVendor और SpecificationVersion तक पहुँच प्रदान करता।

पर हस्ताक्षर किए कक्षाओं के बारे में जानकारी CodeSource वर्ग, के माध्यम से Class.getProtectionDomain().getCodeSource()

+0

धन्यवाद! क्या आपको पता है कि एंड्रॉइड के लिए यह भी उपलब्ध है? – er4z0r

+0

व्यक्तिगत रूप से मुझे नहीं पता, लेकिन ऐसा लगता है: http://developer.android.com/reference/java/lang/package-summary.html –

+0

धन्यवाद। मैंने इसे दोबारा जांच लिया और पाया कि जॉन का समाधान अधिक लचीलापन प्रदान करता है और एंड्रॉइड पर भी उपलब्ध है। इस सुंदर उदाहरण के लिए – er4z0r

5

पुनः प्राप्त किया जा सकता है, जो का उपयोग कर पाया जा सकता है यहाँ सीटू में एक जार के प्रकट से मुख्य विशेषताओं को पढ़ने का एक सरल example है। वास्तव में वहां क्या है इसकी जांच करने के लिए यह आसान है।

+0

+1 – stacker

+0

और मेरे द्वारा +1 :-) – er4z0r

4

उपयोग बाहरी जार/एसडीके MANIFEST.MF जानकारी पता लगाने के लिए:

String name = Manifests.read("Foo-Name"); 

इसके अलावा, यह लेख देखें। हम जार संस्करण आदि का पता लगाने के लिए इस जानकारी का उपयोग कर सकते हैं। http://docs.oracle.com/javase/6/docs/api/java/util/jar/Manifest.html

public void getSDKInfo() { 
    Package pkg = Manifest.class.getPackage(); 
    String specTitle = pkg.getSpecificationTitle(); 
    String vendor = pkg.getSpecificationVendor(); 
    String version = pkg.getSpecificationVersion(); 
    } 
संबंधित मुद्दे

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