我有一个简单的java项目,我从一个Android项目中引用它。在android项目的MainActivity
中,我创建了一个在简单java项目中定义的类的实例。这曾经工作,直到我物理更改项目文件夹的路径。为了确保android项目具有正确的项目引用,我删除了旧的项目文件夹并重新添加了项目引用。我的代码编译。但是虽然在android项目的Order and Export选项卡中检查了我的java项目,但是当我尝试在设备上运行应用程序时,我仍然会遇到NoClassDefinition
异常。任何时候android项目试图访问java项目中定义的任何类时抛出此异常。换句话说
Object o = AnyClassInJavaProject.class;
导致NoClassDefinition
例外。
为了测试,我添加了另一个java项目,定义了类'a.B',从android项目引用了这个项目,从Order and Export选项卡检查了新项目,在MainActivity
代码下面再添加了NoClassDefinition
代码{{ 1}}例外。
new a.B();
我做错了什么?
答案 0 :(得分:0)
这是因为java项目的“编译器合规级别”。它是1.7
并使1.6
解决了问题。我曾经为这种情况获得Unsupported Minor Major
异常,但对于Android应用程序,似乎不支持的版本不包含apk并导致NoClassDefinition异常。