如何导入本地 *jar per gradle?

How to import local *jar per gradle?

提问人:Noam Silverstein 提问时间:6/21/2019 更新时间:6/21/2019 访问量:12237

问:

我包含了一个本地 *.jar 文件(库),如此处所述。.

  1. 单击工具栏中的“文件”
  2. 项目结构
  3. 选择左侧面板中的模块
  4. “依赖项”选项卡
  5. “+”→ JAR 或目录

现在,我将 Android 项目提交到 github,并且似乎缺少该本地 jar 文件的先前设置。

每当同事签出该项目时,他们都没有另一个 jar 文件的路径。

问题:

  1. 我在哪里可以在 gradle(或任何其他文件)中指定上面的这些步骤以链接到该 *.jar 文件?
  2. 另一种可能性是我的应用程序模块中的文件夹。与 1 相比,优缺点是什么?libs
  3. 其他可能性也可以通过将 jar 添加到我的 git 中!?
gradle intellij-idea android-gradle-plugin android-build

评论


答:

5赞 Gabriele Mariotti 6/21/2019 #1

我总是喜欢简单的方法,比如:

  1. 将 JAR 文件复制到模块文件夹。libs

  2. 在文件中添加依赖项build.gradle

在:build.gradle

dependencies {
    // Dependency on local binaries
    implementation fileTree(dir: 'libs', include: ['*.jar'])

   //Alternatively, you can specify individual files as follows:
   //implementation files('libs/myJar.jar', 'libs/bar.jar')

   //..
}

它与要遵循的特定过程无关,它适用于不同的 IDE(也在 CI 环境中),只是所有代码和 jars 文件都在 git 存储库中,build.gradle 脚本足以构建项目。

评论

0赞 Noam Silverstein 6/21/2019
我已经知道如何以“libs”方式进行操作,请参阅 2。在上面原始帖子的问题部分。这里的问题是与项目设置方式相比的利弊?
0赞 Gabriele Mariotti 6/21/2019
我一直更喜欢这种方式。它与所使用的 IDE 无关(它也可以在 CI 环境中工作),并且与要遵循的过程无关。所有的代码和 jar 都在 git repo 中,build.gradle 脚本足以构建项目。
0赞 Noam Silverstein 6/21/2019
在应用模块 gradle 中:导致未解析的引用:eidimplementation fileTree(include: ['*.jar'], dir: 'libs')