2011-02-03 13 views
12

हाय सभी पढ़ा नहीं जा सकता जब एंड्रॉयड के लिए ProGuard enabing, पर हस्ताक्षर किए जार मैं निम्नलिखित डंप पाने के निर्माण, जबकि:एंड्रॉयड Proguard java.io.IOException: [proguard.ClassPathEntry

[2011-02-03 11:28:27 - VideoCreator] Proguard returned with error code 1. See console 
[2011-02-03 11:28:27 - VideoCreator] java.io.IOException: Can't read [[email protected]] (No such file or directory) 
[2011-02-03 11:28:27 - VideoCreator] at proguard.InputReader.readInput(InputReader.java:230) 
[2011-02-03 11:28:27 - VideoCreator] at proguard.InputReader.readInput(InputReader.java:200) 
[2011-02-03 11:28:27 - VideoCreator] at proguard.InputReader.readInput(InputReader.java:178) 
[2011-02-03 11:28:27 - VideoCreator] at proguard.InputReader.execute(InputReader.java:100) 
[2011-02-03 11:28:27 - VideoCreator] at proguard.ProGuard.readInput(ProGuard.java:195) 
[2011-02-03 11:28:27 - VideoCreator] at proguard.ProGuard.execute(ProGuard.java:78) 
[2011-02-03 11:28:27 - VideoCreator] at proguard.ProGuard.main(ProGuard.java:499) 

कुछ भी नहीं मिला नेट पर प्रासंगिक। कोई विचार?

उत्तर

7

ProGuard इनपुट जार में से एक नहीं ढूंढ सकता (या पढ़ सकता है)। यदि आप 4.4 के बजाय ProGuard 4.5.1 इंस्टॉल करते हैं, तो यह उचित फ़ाइल नाम प्रिंट करेगा, ताकि आप यह जान सकें कि यह क्यों गुम है।

+0

4,7 अच्छी तरह से भी – scottyab

+3

@Eric काम करने के लिए लगता है: java.io.IOException: आप कैसे निम्न त्रुटि से निपटने के लिए पर एक टिप प्रदान कर सके नहीं पढ़ सकते हैं [C: \ Users \ myname \ AppData \ स्थानीय \ Temp \ 'E: \ Program Files \ android-sdks \ platforms \ android-15 \ android.jar'] (ऐसी कोई फ़ाइल या निर्देशिका नहीं)? मैं सोच रहा हूं कि सी: \ उपयोगकर्ता \ myname \ AppData \ Local \ Temp \ का उपयोग क्यों किया जाता है। – Hong

5

नवीनतम प्रोगार्ड डाउनलोड करें और अपने मूल एसडीके उपकरण फ़ोल्डर (उदा। सी:/एंड्रॉइड-एसडीके/टूल्स/प्रोगोगर्ड) में अपने मौजूदा lib फ़ोल्डर को डाउनलोड करें जिसे आपने डाउनलोड किया है।

एरिक की तरह कहा, तो यह आपको बताएगा कि क्या गुम है। संभावना से अधिक आपने -libraryjars कमांड में गलत पथ का उपयोग किया है।

2

को हटाने का प्रयास करें जांचें कि क्या आपको .jar के पथ नाम में रिक्त स्थान हैं या नहीं। मुझे बस इसी समस्या का सामना करना पड़ा, ProGuard 4.6 में अपग्रेड किया गया और त्रुटि संदेश में अधिक जानकारी मिली लेकिन समस्या बनी रही। तब मुझे लगा कि यह मेरे पथ के नाम पर रिक्त स्थान की वजह से था, मैंने पथ के नाम पर सभी स्पेस अक्षरों को "-" में बदल दिया, प्रोगार्ड ने फिर से एक आकर्षण की तरह काम किया :)

3

प्रोगवर्ड अपडेट करने से समस्या को ट्रैक करने में मदद मिली। मेरे मामले में यह मेरे मैक और jtse.jar फ़ाइलों पर जेडीके कॉन्फ़िगरेशन के साथ सामान्य स्थान पर स्थित नहीं था।

मुझे समाधान here मिला।

cd $JAVA_HOME/lib 
sudo ln -s ../../Classes/classes.jar rt.jar 
sudo ln -s ../../Classes/jsse.jar . 
+0

मैक पर समस्या की पुष्टि करता हूं, और यह समाधान – Pascal

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