无法编译FBReaderJ

时间:2010-12-25 14:17:17

标签: android ant build-process

解决:问题是:错误的Java版本。请参阅我的评论。

大家好, 使用fbreaderj-0.7.17源码和Android SDK更新管理器(平台工具rev8,1.6 SDK rev 3)。

ant compile之后,获取错误:

-pre-build:

-resource-src:
     [echo] Generating R.java / Manifest.java from the resources...
     [null] /opt/android-sdk-update-manager/platform-tools/aapt: /lib32/libz.so.1: no version information available (required by /opt/android-sdk-update-manager/platform-tools/aapt)
     [null] /tmp/FBReaderJ-sources-0.7.17/res/layout/main.xml:8: error: No resource identifier found for attribute 'fadeScrollbars' in package 'android'

BUILD FAILED
/opt/android-sdk-update-manager/tools/ant/main_rules.xml:306: null returned: 1

目标:

/opt/android-sdk-update-manager/tools/android list targets
Available Android targets:
id: 1 or "android-4"
     Name: Android 1.6
     Type: Platform
     API level: 4
     Revision: 3
     Skins: QVGA, HVGA (default), WVGA800, WVGA854
id: 2 or "Google Inc.:Google APIs:4"
     Name: Google APIs
     Type: Add-On
     Vendor: Google Inc.
     Revision: 2
     Description: Android + Google APIs
     Based on Android 1.6 (API level 4)
     Libraries:
      * com.google.android.maps (maps.jar)
          API for Google Maps
     Skins: WVGA854, HVGA (default), WVGA800, QVGA

项目更新:

  

的/ opt / Android的SDK更新的管理器/工具/机器人   更新项目--name FBReaderJ --path   。 --target 1

local.properties:

  

sdk.dir = /选择/ Android的SDK更新管理器

     

ndk.dir = /选择/机器人-NDK-5 /

2 个答案:

答案 0 :(得分:1)

在我看来,main.xml文件使用的是android:fadeScrollbars属性,该属性不是用于构建项目的API级别的一部分。我认为你应该至少使用API​​级别5来使用该属性。

答案 1 :(得分:1)

解决方案:(已测试)

步骤进行:

  1. /opt/android-sdk-update-manager/tools/android update project --name FBReaderJ --path . --target 2

    (你必须在1.6及以上。对于1.5,有一个不同的分支)

  2. 来自res \ layout \ main.xml的
  3. 删除“fadeScrollbars”行

  4. 来自Android清单的
  5. 您需要将其删除:android:installLocation="auto"

  6. 清理和重建(通过eclipse或使用ant clean& ant release(或ant package)

  7. 对于第3点。 - 另请参阅有关backward compatibility的说明!

相关问题