【问题标题】:Java build Path error - (library) in (project) cannot be read or is not a valid zip file in EclipseJava 构建路径错误 - (项目)中的(库)无法读取或不是 Eclipse 中的有效 zip 文件
【发布时间】:2012-10-31 02:55:14
【问题描述】:

tl:dr 出现错误:Java 构建路径问题 - 所需库的存档:project 中的 library 无法读取或不是有效的 ZIP 文件。这发生在两个(~.so)我已包含在 Eclipse 中开发的 android 项目的构建路径中。我在构建路径中包含 ~.so 是不是做错了什么?

我正在尝试在我的 android 项目中安装 SPen SDK,但在包含一些本机库文件 (~.so) 时遇到问题。

我正在尝试按照此处指定的教程进行操作:Adding S Pen library to android project。这是本页的第 2-2 点。

我将 libspen22.jar 包含到构建路径中,这似乎很好。但是当我尝试运行应用程序时,我收到一条错误消息,提示 Java 问题,其中包含 323 个项目的列表,说明函数 foo 必须覆盖超类方法。但是我注意到我没有将 ~.so 库包含到构建路径中,因此我之前也将这两个库添加到了构建路径中。这停止了​​ 323 错误,但导致了 2 个新错误 - Java 构建路径问题 - 所需库的存档:project 中的 library 无法读取或不是有效的 ZIP 文件。通过在使用 Eclipse 开发的 android 项目的构建路径中包含两个 ~.so 文件,我做错了什么吗?

【问题讨论】:

    标签: java android eclipse samsung-mobile


    【解决方案1】:

    转到项目属性并将 Java 编译器设置为 1.6,它应该会有所帮助。

    我认为 S-Pen 不需要任何 *.so

    无论如何,您不应在构建路径中包含 *.so。任何预构建的 *.so 都应在您的 Android.mk 中指定,如下所示:

    LOCAL_PATH := $(call my-dir)
    
       include $(CLEAR_VARS)
       LOCAL_MODULE := foo-prebuilt
       LOCAL_SRC_FILES := libfoo.so
       include $(PREBUILT_SHARED_LIBRARY)
    

    请参考 Android NDK docs/PREBUILTS.html 但我再次认为这是因为 Java 编译器已设置为 1.5

    【讨论】:

    • 谢谢,问题出在编译器兼容性级别。一旦我将其设置为 1.6,感谢您的帮助。
    猜你喜欢
    • 1970-01-01
    • 2014-02-01
    • 1970-01-01
    • 2019-01-24
    • 2013-12-27
    • 2015-04-18
    • 2013-08-08
    • 2012-09-28
    • 2013-10-31
    相关资源
    最近更新 更多