微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

与dalvikvm一起运行时,java.lang.UnsatisfiedLinkError

如何解决与dalvikvm一起运行时,java.lang.UnsatisfiedLinkError

|| 我正在尝试运行使用以下命令行(从adb shell)构建的JAR文件
dalvikvm -cp /sdcard/MyJar.jar MyJar.main.Main
我的Main类只有一个方法
main
public static void main(String[] args)
{
    // Connect to local db
    sqliteDatabase db = sqliteDatabase.openDatabase(DB_PATH,null,sqliteDatabase.OPEN_READWRITE);
}
当我运行命令行时,看起来好像在运行
main
函数,但是随后出现以下异常:
java.lang.UnsatisfiedLinkError: native_get_int
    at android.os.SystemProperties.native_get_int(Native Method)
    at android.os.SystemProperties.getInt(SystemProperties.java:74)
    at android.database.sqlite.sqliteDatabase.<init>(sqliteDatabase.java:1846)
    at android.database.sqlite.sqliteDatabase.openDatabase(sqliteDatabase.java:820)
    at MyJar.main.Main.main(Main.java:146)
    at dalvik.system.NativeStart.main(Native Method)
我的猜测是,我需要加载某种库来解决链接错误,但是我不知道它是哪个库(这似乎是dalvikvm应该加载的基本内容……)。 有任何想法吗 ?     

解决方法

        尝试运行
app_process
而不是
dalvikvm
。 Vogar使这种事情非常容易。从其SVN页面中查看最新的vogar,使用ant进行构建,然后在Linux桌面上运行
~/Projects/vogar/bin/vogar --mode app_process ~/myapp/src/com/me/Main.java
Vogar将构建您的
.java
,创建
.dex
文件,使用
adb
将其复制到您的设备,然后在您的设备上执行VM。我们用它来开发Dalvik。     

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。