我想在应用程序中使用另一个项目的类。在Eclipse中,我在Java Build Path项目属性下添加了另一个项目,在Libraries下添加了项目的类文件夹。在引用库的包资源管理器中,引用类在(默认包)下可见。从另一个项目导入类不起作用
在写代码,我可以使用引用的类没有问题,而且编译应用程序抛出没有警告或errrors,但应用程序启动时,logcat中显示以下内容:
dalvikvm(16174): Could not find class 'de.project.myproject1.myclass', referenced from method de.project.myproject2.myActivity.onCreate
AndroidRuntime(15570): FATAL EXCEPTION: main
AndroidRuntime(15570): java.lang.NoClassDefFoundError: de.project.myproject1.myclass
AndroidRuntime(15570): at de.project.myproject2.myActivity.onCreate(KeyGenActivity.java:45)
AndroidRuntime(15570): at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1047)
AndroidRuntime(15570): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2627)
AndroidRuntime(15570): at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2679)
AndroidRuntime(15570): at android.app.ActivityThread.access$2300(ActivityThread.java:125)
AndroidRuntime(15570): at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2033)
AndroidRuntime(15570): at android.os.Handler.dispatchMessage(Handler.java:99)
AndroidRuntime(15570): at android.os.Looper.loop(Looper.java:123)
AndroidRuntime(15570): at android.app.ActivityThread.main(ActivityThread.java:4627)
AndroidRuntime(15570): at java.lang.reflect.Method.invokeNative(Native Method)
AndroidRuntime(15570): at java.lang.reflect.Method.invoke(Method.java:521)
AndroidRuntime(15570): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:868)
AndroidRuntime(15570): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:626)
AndroidRuntime(15570): at dalvik.system.NativeStart.main(Native Method)
ActivityManager( 971): Force finishing activity de.project.myproject2/.myActivity
ActivityManager( 971): Activity pause timeout for HistoryRecord{4407ee10 de.project.myproject2/.myActivity}
所以有一个人的提示,如何解决这个问题,我花了整整一天没有解决方案?
我已经将该类导出为jar。这种方式唯一令人讨厌的事情是,每当我在主项目中更改课程时,我都必须重复它。 – Soenke
我建议的其他方法肯定会克服这个问题。 – elevine