0

我为我的项目使用了许多外部库,因为它通过减少工作来节省大量精力。我更喜欢 gradle 构建机制。由于 Gradle 提供了以下添加依赖项的方法:

  1. 将其用作外部库(当库不可用时我更喜欢)

    compile 'com.squareup.picasso:picasso:2.5.2'
    
  2. 通过添加可用的 jar

    compile files('libs/picasso-2.5.2.jar')
    

在项目中使用库的最佳实践是什么?以上述方式使用依赖项的优缺点是什么?

4

2 回答 2

3

考虑:

  • 使用这些解决方案中的任何一个都不会对应用程序性能产生任何影响
  • 复制粘贴 Gradle 行比复制粘贴文件更快
  • 当新版本的库发布时更新 Gradle 行更容易。只需更改几个数字。您甚至可以将其设置为自动更新
  • 当涉及到 Android 库时,您会在有可用更新时收到通知
  • 有时您可能无法访问 Internet,并且在这些情况下,您的硬盘驱动器上有一个现成的 .jar 文件是赢家

我自己,我尽可能使用 Gradle。它只是让我的开发过程更快更容易。


更新为了使我的答案更完整:

  • Rémi Pradal 在他的回答中也有非常有趣的见解:

使用 compile file [...] 将大大增加存储库的大小,因为您可能会提交 .jar 文件。

于 2016-01-15T13:23:48.580 回答
1

应用程序性能不依赖于您用于依赖管理的方法。依赖管理是为了让开发人员的生活更轻松。

考虑到这一点,特定库的新版本发布了一些附加功能,并且您希望迁移到新版本。如果您使用第二种方法,则必须删除现有的 jar 文件并下载新版本的 jar 文件并将其包含在您的代码库中。但是,如果您使用第一种方法,则只需更改版本即可。

总之,如果库或 jar 在 Maven(或任何全局存储库)中可用,请使用第一种方法。如果 jar 只能直接下载,我们没有其他选择,请使用第二种方法。

此外,对于第二个选项,您可以在一行中将所有 jar 文件添加到项目中,如下所示:

compile fileTree(dir: 'libs', include: ['*.jar'])
于 2016-01-15T13:35:13.480 回答