【发布时间】:2013-08-18 16:04:59
【问题描述】:
我正在尝试在 Android Studio (V0.2.3) 项目中使用 LuaJ。
我将luaj-jme-3.0-beta.jar 添加到 libs 文件夹中。
在“项目结构”库下,我添加了项目库luaj-jme-3.0-beta.jar。
在“依赖项”下的 build.gradle 文件中,我添加了这一行:compile files('libs/luaj-jme-3.0-beta1.jar')
在我的 MainActivty 中,我调用了 luaj:
import org.luaj.vm2.Globals;
import org.luaj.vm2.lib.jme.JmePlatform;
...
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
Globals globals = JmePlatform.standardGlobals();
}
编译成功,然后将apk文件上传到目标设备后,我收到以下消息:
08-18 16:59:25.533 11363-11363/? E/AndroidRuntime: FATAL EXCEPTION: main
java.lang.NoClassDefFoundError: org.luaj.vm2.lib.jme.JmePlatform
at de.ibr.luaj5.MainActivity.onCreate(MainActivity.java:16)
at android.app.Activity.performCreate(Activity.java:4465)
at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1049)
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1920)
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:1981)
我使用 apkananyser.jar 来查看 apk 文件。看起来 lua 库没有包含在 apk 文件中。
我是 gradle 新手,如何将 lua 库添加到 apk 文件中?我已经在谷歌上搜索了两天,但找不到解决方案。
我该如何解决这个错误?
【问题讨论】:
-
请分享您的
build.gradle文件代码。 -
buildscript { repositories { mavenCentral() } dependencies { classpath 'com.android.tools.build:gradle:0.5.+' } } apply plugin: 'android' repositories { mavenCentral() } android { compileSdkVersion 17 buildToolsVersion "17.0.0" defaultConfig { minSdkVersion 7 targetSdkVersion 16 } } 依赖项 { compile 'com.android.support:support-v4:13.0.+' 编译文件('libs/luaj-jme-3.0-beta1.jar' ) }
标签: android android-studio luaj