2014-09-18 19 views
17

कृपया, क्या आप जानते हैं कि एकाधिक संपत्ति फ़ोल्डर्स विलय किए जाने के बाद या मर्ज के दौरान एंड्रॉइड प्रोजेक्ट एसेट्स फ़ोल्डर से कुछ फाइल को कैसे बाहर निकालना है?ग्रेड: एंड्रॉइड संपत्ति फ़ोल्डर से फ़ाइल को बाहर निकालें

उदाहरण के लिए:

android { 
    sourceSets { 
    main { 
     assets.srcDirs = [fileTree(dir: 'assets1', exclude: 'myfile.txt'), 'assets2'] // does not work 
     assets.exclude 'assets1/myfile.txt' // does not work 
     assets.exclude '**/*.txt' // does not work 
     assets.exclude '*.txt' // does not work 
    } 
    } 

    packagingOptions { 
    exclude 'assets1/myfile.txt' // does not work 
    exclude '**/*.txt' // does not work 
    exclude '*.txt' // does not work either 
    } 


    aaptOptions { 
    ignoreAssetsPattern "myfile.txt" // does not work 
    } 
} 
+0

FYI करें डुप्लिकेट फ़ाइल को हटाने के लिए: 'assets.srcDirs = [FileTree (dir: 'assets1', बहिष्कृत करें: 'myfile.txt'), 'assets2'] 'काम नहीं करता है। – Blackhex

+0

क्या आपको इसका समाधान मिला? एक जार निर्भरता – 3c71

उत्तर

6

यह इस समय संभव नहीं है।

सुविधा Android संसाधनों या संपत्तियों पर लागू नहीं होती है।

+0

से कुछ संपत्ति फ़ाइल के साथ एक ही समस्या होने के कारण, मैं इसे कॉपी करने से पहले प्रतिलिपि कार्य या फ़ाइल ट्री पर निर्भरता के साथ प्रयोग करने की कोशिश करूंगा ... – Blackhex

6

मुझे लगता है कि यह आप क्या चाहते हैं करना चाहिए:

android { 
    aaptOptions { 
     ignoreAssetsPattern "myfile.txt" 
    } 
} 

स्रोत:http://tools.android.com/tech-docs/new-build-system/user-guide#TOC-aapt-options

+0

कूल, धन्यवाद, मैं कोशिश करूँगा और स्वीकार करूंगा तदनुसार आपका जवाब। – Blackhex

+1

नहीं, यह भी काम नहीं करता है। डुप्लिकेट फ़ाइलों के बारे में त्रुटि '' mergeAssets'' चरण के दौरान फेंक दी गई है, जबकि मुझे लगता है कि पैकेज चरण के दौरान 'aaptOption'' लागू किया गया है। – Blackhex

+0

ठीक है, मुझे लगता है ... उन्हें खेद है:/ –

1

इस प्रयास करें:

export ANDROID_AAPT_IGNORE="ignoreAssetsPatternThatActuallyWorks" 
./gradlew assembleDebug 

यह mergeDebugAssets कदम कोड प्रभावित करने के लिए (एक ही रास्ता है found here)।

इस बारे में a bug दायर की।

+0

धन्यवाद, मैं कोशिश करूँगा ... – Blackhex

13

मैं एक ही समस्या में भागता हूं और ऐसा लगता है कि "!" यह इंगित करने के लिए काम करता है कि फ़ाइल को बाहर रखा जाना चाहिए:

aaptOptions { 
    ignoreAssetsPattern "!myfile.txt" 
} 

"assets.exclude" भी "!" जोड़कर काम कर सकता है लेकिन मैं यह परीक्षण नहीं किया ...

+2

विस्तृत चार के लिए '*' का उपयोग करें, और पैटर्न को विभाजित करने के लिए ':' का उपयोग करें। जैसे: ** "! *। txt:! *। आरटीएफ" ** –

+0

मेरे लिए काम करता है .. – jony89

0

सिर्फ bash

zip -d xx.jar xxx.txt 

का उपयोग जार फ़ाइल से

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