की रूट में 'MANIFEST.MF` फ़ाइल डालने के लिए ग्रैडल के मैनिफेस्ट एपीआई का उपयोग कैसे करें हम जावा प्लगइन की विशेषता MANIFEST.MF
फ़ाइलों को jar
कलाकृतियों में लिखने के लिए उपयोग करते हैं।एक ज़िप फ़ाइल
हम GWT
परियोजनाओं के निर्माण के लिए भी ग्रेडल का उपयोग करते हैं और आउटपुट जिन्हें हमने उन परियोजनाओं के लिए परिभाषित किया है, zip
है। मैं उस ज़िप फ़ाइल की रूट में MANIFEST.MF
फ़ाइल शामिल करना चाहता हूं।
मैंने type: Jar
का एक कार्य का उपयोग करने का प्रयास किया है, इसलिए मैं इसकी manifest
संपत्ति का उपयोग कर सकता हूं लेकिन समस्या यह है कि मैनिफेस्ट फ़ाइल META-INF/MANIFEST.MF
में लिखी गई है, जो मैं नहीं चाहता हूं। कारण यह है कि हम मुख्य ऐप में संग्रह को अनजिप करते हैं और मुझे अपने स्वयं के घृणित उद्देश्यों के लिए रनटाइम पर MANIFEST.MF
फ़ाइल का संदर्भ देने में सक्षम होना चाहिए।
तो अभी संग्रह इस तरह दिखता है:
/gwtdirectory/
/gwtdirectory/file1
/gwtdirectory/file2
/gwtdirectory/...
/gwtdirectory/filen
और मैं की जरूरत है इसे इस तरह ले लिया:
/gwtdirectory/
/gwtdirectory/META-INF/MANIFEST.MF
/gwtdirectory/file1
/gwtdirectory/file2
/gwtdirectory/...
/gwtdirectory/filen
:
/gwtdirectory/
/gwtdirectory/MANIFEST.MF
/gwtdirectory/file1
/gwtdirectory/file2
/gwtdirectory/...
/gwtdirectory/filen
मैं पहले से ही सफलतापूर्वक मिल गया है यह तरह देखने के लिए
परिभाषा के माध्यम से:
task pack(type: Jar){
manifest {
attributes(...)
}
extension = 'zip'
from gwt.destinationDir
}
writeTo
विधि शक्तिशाली वादा करता है, सिवाय इसके कि मुझे उस इंटरफ़ेस का कार्यान्वयन नहीं मिल रहा है जिसका मैं उपयोग कर सकता हूं और मैं अपना खुद का लिखने से बचने की कोशिश कर रहा हूं।
विचार?
'जार 'कार्य को' मेनिफेस्ट() 'प्राप्त किया गया है जो' प्रकट 'कार्यान्वयन देता है। तो मुझे लगता है कि आपको 'पैक (टाइप: जार) {manifest.writeTo (...)} 'करने में सक्षम होना चाहिए। – rodion