build.gradle dependencies: fileTree vs. project vs. plain st



我碰巧是一名学习RN的JS开发人员。

我正在使用mapbox在RN上构建一个应用程序。

在配置中,我偶然发现了build.gradle.

我用谷歌搜索了build.gradle知道 prupose 是指定库和模块构建配置?(这是对的吗?

我正在浏览安装说明,我看到了这样的东西(如果我们的 RN <0.60,我们需要更改配置(

dependencies {
implementation fileTree(dir: "libs", include: ["*.jar"])
implementation "com.android.support:appcompat-v7:${rootProject.ext.supportLibVersion}"
implementation "com.facebook.react:react-native:+"  // From node_modules
+   implementation project(':@react-native-mapbox-gl_maps')
}

在依赖项中,我看到他们有三种不同类型编写的实现

  1. 使用 comcom.android.support:appcompat-v7

  2. 使用项目implementation project(':@react-native-mapbox-gl_maps')

  1. 使用 fileTree

fileTree(dir: "libs", include: ["*.jar"])

我试图在build.gradle的实现中谷歌搜索项目和com之间的差异,但找不到任何有用的东西。

有人可以帮助我了解上述依赖项之间的差异吗?

  1. 它是远程二进制依赖项。示例,当您将库推送到某个云存储库(Google,JCenter...

  2. 它是本地库模块依赖项。当项目中有一些模块(如身份验证模块(时,查看模块。它在您的项目中可用,您可以编辑它的源代码。

  3. 这是本地二进制依赖项。当您想要共享某些内部库并且不发布到任何云存储库时。您必须将文件 .jar 或 .aar 附加到 lib 目录,并通过在"libs"目录中找到它来链接到它。

您可以在此处找到更多详细信息

最新更新