【问题标题】:How To Add Maven Dependency (Android Studio)如何添加 Maven 依赖(Android Studio)
【发布时间】:2017-05-21 06:59:45
【问题描述】:

我在下面有这段代码..

<dependency>
    <groupId>me.gujun.android.taggroup</groupId>
    <artifactId>library</artifactId>
    <version>1.4</version>
    <type>apklib</type>
</dependency>

但是你把它放在 Android Studio 的什么地方呢?我已经在 build.gradle 中放置了一个依赖项 compile 'me.gujun.android.taggroup:library:1.4@aar'

【问题讨论】:

标签: xml maven android-studio maven-dependency-plugin maven-dependency


【解决方案1】:

Android Studio 2020.3.1(可能之前),他们在settings.gradle 中添加了dependencyResolutionManagement。因此,如果您在 build.gradle 中添加内容,默认情况下不会搜索添加的存储库并失败。

一种解决方案是将您的附加存储库添加到settings.gradle 文件,并将RepositoriesMode 更改为PREFER_SETTINGS

settings.gradle:

import org.gradle.api.initialization.resolve.RepositoriesMode
dependencyResolutionManagement {
    repositoriesMode.set(RepositoriesMode.PREFER_SETTINGS) // CHANGED THIS LINE
    repositories {
        google()
        mavenCentral()
        jcenter() // Warning: this repository is going to shut down soon
        maven { url 'https://oss.sonatype.org/content/repositories/snapshots'} // ADDED REPO
    }
}
rootProject.name = "My Application"
include ':app'

【讨论】:

    【解决方案2】:

    在Android Studio 3.0及以上,你可以直接复制

    <dependency>
        <groupId>me.gujun.android.taggroup</groupId>
        <artifactId>library</artifactId>
        <version>1.4</version>
        <type>apklib</type>
    </dependency>
    

    到build.gradle,它会自动将其转换为:

    implementation 'me.gujun.android.taggroup:library:1.4'
    

    【讨论】:

      【解决方案3】:

      我刚才也遇到了类似的问题。我试图在 Android 应用程序中使用 khttp。这是图书馆给我的 XML:

      <repository>
          <id>jitpack.io</id>
          <url>https://jitpack.io</url>
      </repository>
      

      ...和

      <dependency>
          <groupId>com.github.jkcclemens</groupId>
          <artifactId>khttp</artifactId>
          <version>-SNAPSHOT</version>
      </dependency>
      

      我最终做的是编辑根 build.gradle 文件并添加以下内容:

      allprojects {
          repositories {
              maven {
                  url "https://jitpack.io"
              }
          }
      }
      

      然后,我编辑了应用程序的 gradle 文件,并将这一行添加到现有的 dependencies { .... } 部分:

      compile 'com.github.jkcclemens:khttp:master-SNAPSHOT'
      

      完成后,我点击黄色栏上的“重试”或“同步”按钮,似乎让 Android Studio 3.0.1 能够识别我所做的更改。

      我按照JitPack homepage 上的说明进行操作。

      【讨论】:

      • 这很有帮助,但你有没有尝试过 Kotlin 多平台项目。我试过了,它适用于 Android 目标,但不适用于普通或 iOS。有没有办法让它发挥作用?
      • @ArjunKalidas 不幸的是,我不知道您所说的“Kotlin 多平台项目”是什么意思,所以我无法帮助您:-/ 在编写 Android 时我仍然是初学者应用。我只在常规 Android 应用项目中使用针对虚拟 Android 设备的 Android Studio 对此进行了测试。如果您设法弄清楚,请随时提供您自己的答案。
      • 当然可以。我想弄清楚。
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2015-03-13
      • 2015-07-22
      • 2019-06-21
      • 1970-01-01
      • 2017-03-24
      • 1970-01-01
      • 2016-03-31
      相关资源
      最近更新 更多