我目前正在使用4.6.1版(Windows Vista + Eclipse)编写单元测试项目。我的项目分为3部分:
A项目应该引用B中存在的代码(当然甚至是C中)。我想指出我可以毫无问题地运行项目B(引用C)。当我尝试运行项目A时,我的问题开始了。
我执行了以下操作:
将B项目类型从CLDC应用程序更改为库 B参考项目C. A引用项目B. 将所有项目设置为“Active for Blackberry” 基本上A将另外两个项目视为两个嵌套库。 代码构建成功,但问题是当B在执行期间调用C库的类时,会抛出以下异常:
NoClassDefFoundError的
没有详细信息
任何帮助都会非常感激。
非常感谢
答案 0 :(得分:3)
NoClassDefFoundError意味着A cannot find C at runtime。通常的原因是C无法部署到目标设备(模拟器或真实设备)上。
解决方案1:
对于Project-> Properties-> Java Build Path下的项目A,确保C(您的库项目)列在'Projects'下,并在'Order and export'选项卡上选中相应的复选框。这应该确保在构建和部署过程中导出库。
解决方案2:
在项目A中,向库C源添加符号链接(右键单击项目 - >构建路径 - >链接源)。这将强制在构建项目A时包含库的源代码。