पार्स यह;) यहाँ एक JSFiddle है करने के लिए बहुत-प्रिंट एक OSGi MANIFEST.MF फ़ाइल:
http://jsfiddle.net/scotch/5WJwd/embedded/result/
var sectionsText = text.split(/\n\n\n/),
sections = {},
sectionText,
name,
body,
packagesText,
packages,
packageName,
packageBody;
for (var i in sectionsText) {
sectionText = sectionsText[i];
name = sectionText.substr(0, sectionText.indexOf(": "));
body = sectionText.substr(sectionText.indexOf(": ") + 2);
sections[name] = body;
if (name.indexOf("Package") != -1) {
body = body.replace(/[\n\r] /g, '');
body = body.replace(/(,)(?=(?:[^"]|"[^"]*")*$)/g, "$1\n");
packagesText = body.split(/\n/);
packages = {};
for (var i in packagesText) {
packageBody = packagesText[i];
packageName = packageBody.substr(0, packageBody.indexOf(";"));
packageBody = packageBody.substr(packageBody.indexOf(";")+1);
if (collapse) {
packageBody = packageBody.replace(/uses:="[^"]*"/g, 'uses:="..."');
}
packages[packageName] = packageBody;//.replace(/;/g, ';\n');
}
sections[name] = packages;
}
}
यह भी वर्णमाला के क्रम से प्रविष्टियों सॉर्ट करता है ताकि आप तुलना कर सकते हैं उन्हें। उम्मीद है कि यह किसी के लिए उपयोगी होगा (विशेष रूप से ग्रहण के बाहर विकासशील लोग)।
यह लगभग ठीक है जो मैं बाद में था - जेएआर संपादक केवल स्पष्ट फ़ाइल को सादा पाठ के रूप में दिखाता है लेकिन बीएनडी बंडल संपादक एक जार फ़ाइल खोलने और पार्स खोलने में सक्षम लगता है और प्रदर्शित करता है आयात pkgs अच्छी तरह से (+1) लेकिन निर्यात या निजी pkgs (-1) नहीं। – pauli
असल में यह सही नहीं है। यदि आपने अपनी जार फ़ाइल को अपने सीएनएफ रिपोजिटरी में जोड़ा है, तो आपको केवल रिपोजिटरी व्यू में बंडल पर क्लिक करना होगा और फिर "आयात/निर्यात" दृश्य देखें। वहां आप देखेंगे कि किस प्रकार के पैकेज आयात किए जाएंगे और किस प्रकार के पैकेज निर्यात किए जाएंगे।लेकिन निश्चित रूप से निजी नहीं, बीसी वे अभी भी निजी हैं;) –
ध्यान दें कि बेंडटॉल्स के हाल के संस्करण में आप जेएआर संपादक को एक स्टैंडअलोन घटक के रूप में स्थापित कर सकते हैं, यानी आपको पूरे बेंडटॉल्स को इंस्टॉल करने की आवश्यकता नहीं है यदि आप ' टी करना चाहता हूँ –