Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/181.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android 使用库会导致ClassNotFoundException_Android_Classnotfoundexception - Fatal编程技术网

Android 使用库会导致ClassNotFoundException

Android 使用库会导致ClassNotFoundException,android,classnotfoundexception,Android,Classnotfoundexception,我拿了一个完全可以工作的应用程序,复制了它,并将它做成了一个库(Properties->Android,Is库)。我还重命名了这个项目以单独跟踪它-com.mylib 然后,我使用原始应用程序com.myapp并删除了所有的.java文件,除了一个包含一些数据的文件(没有实际的代码)。我通过Properties->Android将其链接到mylib库中添加的库部分。它显示为绿色支票 根据Google的建议,将myapp的清单活动更改为所有以库作为前缀的活动 android:name="com.m

我拿了一个完全可以工作的应用程序,复制了它,并将它做成了一个库(Properties->Android,Is库)。我还重命名了这个项目以单独跟踪它-com.mylib

然后,我使用原始应用程序com.myapp并删除了所有的.java文件,除了一个包含一些数据的文件(没有实际的代码)。我通过Properties->Android将其链接到mylib库中添加的库部分。它显示为绿色支票

根据Google的建议,将myapp的清单活动更改为所有以库作为前缀的活动

android:name="com.mylib.AppInfo"
清理了库和项目,并退出并重新启动了Eclipse。编译正常,程序运行主活动“AppInfo”,但尝试访问其他活动总是失败,ClassNotFoundException

我还在myapp清单中尝试了不同的名称前缀,例如:

android:name="com.myapp.AppInfo"
android:name=".AppInfo"
但这些都无法进入主应用程序。虽然库或myapp清单中没有更改任何活动类名,但我已经逐个字符地检查了它们,以确保它们在大小写和字母上都匹配

在Windows7x64下使用Eclipse,该应用程序设置为minSdk 11。还加载了最新的SDK工具(v20.0.3)。另外,Proguard还没有被使用,我正在使用实际的硬件(Android 4.0)

我正竭尽全力想让图书馆正常运转。我有一个完全不同的库和应用程序对在另一个项目上以相同的方式工作,我比较了两个库和项目之间的每个属性和选项,没有发现任何缺少或添加的导致此失败的内容

以下是LogCat的完整错误:

java.lang.RuntimeException: Unable to instantiate activity ComponentInfo{com.myapp/com.myapp.LiveWallpaperSettings}: java.lang.ClassNotFoundException: com.myapp.LiveWallpaperSettings

关于如何追踪此事,有什么建议或想法吗

选择它作为库后,它将显示绿色复选框。单击“确定”并重新打开项目设置后,是否仍显示为绿色复选框?库项目文件夹是否与项目文件夹位于同一位置?查看此帖子是否有帮助:是否显示绿色复选标记?正如@Lablabla meteod?是的,绿色复选标记出现。Musselwhizzle提到2680827有一些好的想法,但即使尝试一些更复杂的想法也无法解决问题。例如:从Eclipse中删除项目;从项目文件夹中删除\bin和\gen中的文件;使用命令行重新启动Eclipse:Eclipse-clean;进口项目;右键单击项目-选择属性>Java构建路径>库并删除除Android XX.Y之外的所有内容;从属性中删除库,然后单击“确定”;在库中重新添加,然后单击“确定”;清洁项目。问题仍然存在。