【问题标题】:Replace Android library project by JAR library?用 JAR 库替换 Android 库项目?
【发布时间】:2012-04-16 14:54:55
【问题描述】:

在我的项目中,有很多库项目(超过 10 个)。建造需要很长时间。所以我想用 JAR 库替换其中的一些库项目。

根据这个问题:How to Convert an Android Library Project to an External JAR?

作为 CommonsWare 的回答 (https://stackoverflow.com/a/7973950/190309)

如果您的库是纯 Java 代码,没有资源,您可以创建 .class 文件中的 JAR,就像使用常规 Java 一样。

但是当使用来自 Jake Wharton 的 NineOldAndroids 库 (https://github.com/JakeWharton/NineOldAndroids) 时,

此库以 .jar 文件的形式呈现,您可以将其包含在应用程序的 libs/ 文件夹中。

这意味着虽然 NineOldAndroids 中有很多资源,但我可以将其用作 JAR 库。

在 ADT 17 中,对于每个库项目,在 lib_project/bin/lib_project.jar 中都有一个 JAR 库,它会在每次构建库项目时自动生成。

我可以使用这个 JAR 作为库项目的替代品吗?

【问题讨论】:

    标签: android jar library-project


    【解决方案1】:

    意思是虽然 NineOldAndroids 里面有很多资源

    NineOldAndroids 中的资源恰好为零。您可以通过looking at the project 来判断这一点,并看到没有res/ 目录。

    在 ADT 17 中,对于每个库项目,在 lib_project/bin/lib_project.jar 中都有一个 JAR 库,它会在每次构建库项目时自动生成。

    我可以使用这个 JAR 作为库项目的替代品吗?

    暂时没有。该 JAR 仍然依赖于库项目本身。

    【讨论】:

      【解决方案2】:

      我已经在how-to-consume-reusable-gui-element-widget-with-resources-in-android 中尝试并记录了这个问题,但我没有成功使用 adt-17。但也许我做错了什么。

      CommonsWare-s 对我的问题的回答是

       > Eventually (which now appears like it will be the R18 version of tools or later), the 
       > tools should support packaging reusable components in a JAR, with resources, in 
       > such a manner that you can add them to a host project and the resources will 
       > be blended in automatically. Right now, that's not an option.
      

      【讨论】:

      • 是的,R18(和 R19)在没有添加此功能的情况下来来去去。我已经放弃预测他们什么时候会发布这个功能。 :-(
      【解决方案3】:

      如果您查看为库项目生成的 jar,您会发现其中没有资源。它仅用于 Java 类。

      【讨论】:

        猜你喜欢
        • 2014-01-03
        • 2014-08-21
        • 2014-08-28
        • 2014-07-07
        • 1970-01-01
        • 2019-03-19
        • 2013-07-08
        • 2014-05-21
        • 2013-04-11
        相关资源
        最近更新 更多