Android - 包含jar导致'class not found'异常

时间:2013-12-16 06:35:42

标签: android eclipse settings installation

我想将Netty的jar包含到我的android项目中。

我已经尝试了adding it directly as a reference,但我得到java.lang.NoClassDefFoundError,指向Netty的一个班级。

另一种方法是将库直接放入libs文件夹,当我这样做时,Eclipse的Android插件会自动将libs文件夹中的jar包含到'android private图书馆'。在这种情况下,我似乎无法附加来源。

我尝试删除android私有库,并通过引用库链接所有内容。似乎android无法从引用库中找到类;因为它导致NoClassDefFoundError例外。

我想知道是否有正确的方法来解决这个问题。

注意:我知道有很多关于这个问题的帖子......比如这个方法(来自上面的链接):

  1. 在项目的根文件夹中创建名为libs 的文件夹
  2. JAR文件复制到libs文件夹
  3. 现在右键单击Jar文件,然后选择Build Path>添加到构建 路径,它将创建一个名为“Referenced Libraries”的文件夹 项目
  4. 但它只是导致NoClassDefFoundError例外。

    我正在使用Eclipse Kepler。

4 个答案:

答案 0 :(得分:2)

我通过接下来的步骤解决了这个问题:

  1. 转到 Java构建路径 - > 订单和导出
  2. 启用所有库的复选框
  3. 点击确定
  4. 清理并重建项目

答案 1 :(得分:1)

我认为你没有检查 Android私人图书馆。看看this回答

答案 2 :(得分:0)

尝试运行Project→Clean(选择所有项目)。它应该清洁&重建一切。

如果eclipse没有导入jar,你的java文件就会出错。如果您的项目构建没有错误,甚至尝试在模拟器或设备上启动,则可能是编译问题。使用gradle时经常会出现此问题。最好的解决方案是清理所有内容并重建:)

答案 3 :(得分:0)

上述所有步骤会一次又一次地给出同样的错误。不要害怕我会解决你的问题:

  1. 不要添加外部.jar文件,而是将其从库中删除。
  2. 将您的驱动程序文件复制到项目 web-inf / lib(ex.ojdbc14.jar)
  3. 运行您的动态应用程序。