我在我的android项目中使用了第三方jar文件。当我将jar添加到构建路径时,通过eclipse项目 - >属性 - > java构建路径 - >图书馆 - >添加外部jar。
项目编译正常,直到该代码行运行,该代码行使用该jar中的任何类,并且我在运行时遇到类未找到异常,程序崩溃。
我通过将第三方jar文件复制到项目的libs文件夹来解决它。未找到的课程会消失。
问题: 有人可以说明为什么这是必需的,为什么它不仅仅使用项目属性的引用,尽管它编译得很好..为什么我必须明确地将它复制到libs文件夹?
答案 0 :(得分:0)
当我将jar添加到构建路径时,通过eclipse项目 - >属性 - > java构建路径 - >图书馆 - >添加外部jar。
这不适合与Android构建工具一起使用。
我通过将第三方jar文件复制到项目的libs文件夹来解决它。未找到的课程会消失。
正确。
有人可以说清楚为什么这是必需的,为什么它不仅仅使用项目属性的引用,尽管它编译得很好..为什么我必须明确地将它复制到libs文件夹?
因为只有libs/
中的JAR被添加到APK文件中。 Java构建路径纯粹是一个编译时间的东西,没有绑定到Android的APK文件包装。
答案 1 :(得分:0)
文件夹“libs”中的所有库都可以通过Android Eclipse插件找到,并添加到项目的“Android Dependencies”项中。这是一个更好的例证 :http://android.foxykeep.com/dev/how-to-fix-the-classdefnotfounderror-with-adt-17