android – HelloWorld无法在dalvikvm下运行

android – HelloWorld无法在dalvikvm下运行,第1张

概述我正在尝试 https://android.googlesource.com/platform/dalvik/+/gingerbread/docs/hello-world.html的Hello World示例 但是,我的Foo程序没有运行; dalvikvm抱怨如下: Dalvik VM unable to locate class ‘Foo’ java.lang.NoClassDefFoundE 我正在尝试 https://android.googlesource.com/platform/dalvik/+/gingerbread/docs/hello-world.html的Hello World示例

但是,我的Foo程序没有运行; dalvikvm抱怨如下:

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

在dalvikvm调用期间,Logcat提供了更多信息:

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

有没有人知道我做错了什么?

解决方法 这篇文章的作者Andy McFadden给了我一个提示:

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),它就可以了!

@domen的评论:你实际上不必是root.您可以设置ANDROID_DATA环境变量,它会将缓存放在那里.即mkdir / data / local / tmp / dalvik-cache,export ANDROID_DATA = / data / local / tmp.

总结

以上是内存溢出为你收集整理的android – HelloWorld无法在dalvikvm下运行全部内容,希望文章能够帮你解决android – HelloWorld无法在dalvikvm下运行所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/web/1130764.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2022-05-30
下一篇2022-05-30

发表评论

登录后才能评论

评论列表(0条)

    保存