【问题标题】:Getting duplicate class error when adding eclipse paho mqtt dependencies to Andrdoid Studio project将 eclipse paho mqtt 依赖项添加到 Andrdoid Studio 项目时出现重复类错误
【发布时间】:2020-02-08 22:11:28
【问题描述】:

当我添加以下依赖项时,我无法再编译项目了

dependencies {
    ...
    implementation 'org.eclipse.paho:org.eclipse.paho.client.mqttv3:1.0.2'
    implementation 'org.eclipse.paho:org.eclipse.paho.android.service:1.0.2'
    ...
}

到 paho eclipse 网站上建议的项目:

https://www.eclipse.org/paho/clients/android/

我收到以下错误:

Duplicate class androidx.collection.LruCache found in modules collection-1.0.0.jar (androidx.collection:collection:1.0.0) and jetified-support-v4-r7.jar (com.google.android:support-v4:r7)
Duplicate class androidx.core.accessibilityservice.AccessibilityServiceInfoCompat found in modules core-1.0.1-runtime.jar (androidx.core:core:1.0.1) and jetified-support-v4-r7.jar (com.google.android:support-v4:r7)
Duplicate class androidx.core.app.ActivityCompat found in modules core-1.0.1-runtime.jar (androidx.core:core:1.0.1) and jetified-support-v4-r7.jar (com.google.android:support-v4:r7)

还有更多其他重复类错误。 我的项目设置非常基础,因为我刚刚开始。

所以实际上,如果你打开一个新项目并添加这些依赖项,你应该会得到和我一样的错误。

这是为什么?如何解决?

P.S.:我已经清理、重建、无效缓存并重新启动、更新了 Android Studio 等。

没什么,我这里还漏掉了一些东西。

【问题讨论】:

  • 您可以查看此link。也许这个应该适合你。
  • 不幸的是,我没有在项目中链接任何外部库。
  • 尝试将此添加到您的 gradle 文件中:- implementation ('org.eclipse.paho:org.eclipse.paho.client.mqttv3:1.2.0'){ transitive = false }

标签: java android maven gradle


【解决方案1】:

我从https://mvnrepository.com/ 下载了 paho mqtt jar 文件,并在不通过 gradle 的情况下将其插入到项目中,它可以工作。

也许有人知道为什么在我的问题中显示的在 gradle 文件中插入依赖项会导致编译错误。

【讨论】:

    【解决方案2】:

    晚了,但对于遇到这个问题的未来人来说:

    用这个替换 Paho 依赖项:

    implementation'org.eclipse.paho:org.eclipse.paho.client.mqttv3:1.2.4'
    implementation'org.eclipse.paho:org.eclipse.paho.android.service:1.1.1'
    

    看起来像旧版本中的错误。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2020-12-08
      • 1970-01-01
      • 1970-01-01
      • 2019-10-11
      • 1970-01-01
      • 2016-02-19
      • 1970-01-01
      相关资源
      最近更新 更多