小编PiL*_*LLe的帖子

具有项目依赖关系的Eclipse/ADT下的Android Activity(解析XY失败)

我试图让一个游戏项目与平台无关,所以我把它分成三个项目,从低级别到顶级的android特定级别,如:引擎,游戏,安卓游戏.

错误中涉及的类/接口是:

  1. (低级)引擎项目定义了这个接口:

    com.myteam.engine.IGame
    
    Run Code Online (Sandbox Code Playgroud)
  2. (中级)平台独立游戏项目定义了这些类:

    com.myteam.myproject.Game
    com.myteam.myproject.MyProject (derived from com.myteam.myproject.Game)
    
    Run Code Online (Sandbox Code Playgroud)
  3. (顶级)android项目实现活动等:

    com.myteam.myproject.android.MyAndroidActivity (using com.myteam.myproject.MyProject)
    
    Run Code Online (Sandbox Code Playgroud)

所有编译良好并在Windows下完美运行(使用前两个在3级上的另一个Windows项目).

但是当使用ADT运行时,它会在Activity启动时在运行时失败.Android应用程序基本上只显示一个带有"NoClassDefFoundError com.myteam.myproject.MyProject"异常的调用堆栈.

在LogCat输出显示的加载/解析时,异常似乎是由它的超类(或超类'接口)引起的:

12-20 19:51:51.897: D/ddm-heap(218): Got feature list request
12-20 19:51:52.207: I/dalvikvm(218): Failed resolving Lcom/myteam/myproject/Game; interface 18 'Lcom/myteam/engine/IGame;'
12-20 19:51:52.217: W/dalvikvm(218): Link of class 'Lcom/myteam/myproject/Game;' failed
12-20 19:51:52.227: W/dalvikvm(218): Unable to resolve superclass of Lcom/myteam/myproject/MyProject; (52)
12-20 19:51:52.227: W/dalvikvm(218): Link of class 'Lcom/myteam/myproject/MyProject;' failed
12-20 19:51:52.227: E/dalvikvm(218): Could not find class 'com.myteam.myproject.MyProject', referenced from method com.myteam.myproject.android.MyAndroidActivity.onCreate
12-20 19:51:52.227: W/dalvikvm(218): VFY: unable to …
Run Code Online (Sandbox Code Playgroud)

eclipse android adt multiple-projects apk

11
推荐指数
2
解决办法
9654
查看次数

标签 统计

adt ×1

android ×1

apk ×1

eclipse ×1

multiple-projects ×1