2011-05-27 10 views
6

मैं लेकिन, मेरा फू कार्यक्रम नहीं चला https://android.googlesource.com/platform/dalvik/+/gingerbread/docs/hello-world.htmlHelloWorld dalvikvm

से नमस्ते विश्व उदाहरण कोशिश कर रहा हूँ के तहत चलाए जा नहीं कर सकता;

D/dalvikvm(1361): creating instr width table E/dalvikvm(1361): Can't open dex cache '/data/dalvik-cache/[email protected]@[email protected]': No such file or directory I/dalvikvm(1361): Unable to open or create cache for /mnt/sdcard/foo.jar (/data /dalvik-cache/[email protected]@[email protected]) W/dalvikvm(1361): threadid=1: thread exiting with uncaught exception (group=0x4 001e9a8)

वहाँ किसी को भी क्या मैं गलत किया था पता है:

Dalvik VM unable to locate class 'Foo' java.lang.NoClassDefFoundError: Foo at dalvik.system.NativeStart.main(Native Method) Caused by: java.lang.ClassNotFoundException: Foo in loader dalvik.system.PathClassLoader[/mnt/sdcard/foo.jar] at dalvik.system.PathClassLoader.findClass(PathClassLoader.java:243) at java.lang.ClassLoader.loadClass(ClassLoader.java:573) at java.lang.ClassLoader.loadClass(ClassLoader.java:532) ... 1 more

Logcat dalvikvm मंगलाचरण के दौरान और अधिक जानकारी दी: dalvikvm निम्नलिखित के बारे में शिकायत?

उत्तर

10

लेख के लेखक, एंडी मैकफ़ेडन, मुझे एक टिप दे!


@domen द्वारा टिप्पणी: आपको वास्तव में रूट नहीं होना चाहिए। आप ANDROID_DATA पर्यावरण चर सेट कर सकते हैं और यह वहां कैश रखेगा। अर्थात। mkdir /data/local/tmp/dalvik-cache, export ANDROID_DATA=/data/local/tmp

+4

आपको वास्तव में रूट होना जरूरी नहीं है। आप ANDROID_DATA पर्यावरण चर सेट कर सकते हैं और यह वहां कैश रखेगा। अर्थात। 'mkdir/data/local/tmp/dalvik-cache',' निर्यात ANDROID_DATA =/डेटा/स्थानीय/tmp'। – domen

0

ऐसा लगता है कि आप इसे एसडीकार्ड से एक जार फ़ाइल के रूप में चलाने की कोशिश कर रहे हैं। आपको एपीके फ़ाइल के रूप में इसे बनाने के लिए टूल का उपयोग करने की आवश्यकता है। यह जावा बाइटकोड से Dalvik कोड में परिवर्तित होता है, और फ़ाइल की सामग्री को पुनर्गठित करता है।

It's trying to create a .odex file in /data/dalvik-cache. You'll need to be running as root, or have an unprotected /data/dalvik-cache.

एक बार मैं अपने डिवाइस को रूट (जैसे SuperOneClick का उपयोग कर), यह काम किया:

+0

यदि मैं गलत नहीं हूं, तो एंड्रॉइड के दल्विकवम ने मेरे द्वारा प्रदान किए गए लिंक में हैलो वर्ल्ड उदाहरण के बाद, जेएआरएड की परिवर्तित डीएक्स फ़ाइल को निष्पादित करने की अनुमति दे सकती है। तो यह कारण नहीं होना चाहिए। – user761567

+0

एचएम। मैं बस उस उदाहरण भाग गया। मुझे .class फ़ाइल को डीएक्स के लिए प्लेटफॉर्म-टूल्स डायरेक्टरी में ले जाना था (विंडोज मशीन पर)। लेकिन इसके अलावा, कोई समस्या नहीं है। ऐसा लगता है कि आपकी .jar फ़ाइल किसी भी तरह भ्रष्ट है। –

+0

हाय टेड, मेरी मदद करने की कोशिश करने के लिए धन्यवाद ... मैं यह जानना चाहता हूं कि यह मेरी जार फ़ाइल है जो समस्याग्रस्त है, या यह मेरा एंड्रॉइड डिवाइस (क्रिएटिव ज़ीओ 8) है। क्या आप मुझे अपना ईमेल पता [email protected] पर भेज सकते हैं ताकि मैं आपको अपनी जार फ़ाइल भेज सकूं ताकि आप मेरे लिए परीक्षण कर सकें? साथ ही, एंड्रॉइड कमांड लाइन तक पहुंचने के लिए आप किस टर्मिनल इम्यूलेशन एप्लिकेशन का उपयोग कर रहे हैं? – user761567

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