为了账号安全,请及时绑定邮箱和手机立即绑定

“程序类型已存在”是什么意思?

“程序类型已存在”是什么意思?

慕哥9229398 2019-08-23 09:29:26
“程序类型已存在”是什么意思?我正在尝试在Android Studio中构建应用。将Eclipse Paho库添加为gradle依赖项(或者是Maven?我是Android生态系统的新手)后,我收到以下错误:Program type already present: android.support.v4.accessibilityservice.AccessibilityServiceInfoCompatMessage{kind=ERROR, text=Program type already present: android.support.v4.accessibilityservice.AccessibilityServiceInfoCompat, sources=[Unknown source file], tool name=Optional.of(D8)}我已经检查了许多与此错误相关的不同StackOverflow问题,但答案都是特定于某些库的。 我不仅要寻找错误的解决方案,还要了解错误的含义。 这样,人们就可以更容易地找出针对特定案例的解决方案。到目前为止,还没有答案提供。从其他StackOverflow答案中,我发现它与我的gradle文件有关。所以,这是app / build.gradle:apply plugin: 'com.android.application'android {     compileSdkVersion 27     defaultConfig {         applicationId "---REDACTED FOR PRIVACY---"         minSdkVersion 15         targetSdkVersion 27         versionCode 1         versionName "1.0"         testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"     }     buildTypes {         release {             minifyEnabled false             proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'         }     }}dependencies {     implementation fileTree(include: ['*.jar'], dir: 'libs')     implementation 'com.android.support:appcompat-v7:27.1.0'     implementation 'com.android.support:support-media-compat:27.1.0'     implementation 'com.android.support:support-v13:27.1.0'     implementation 'com.google.android.gms:play-services-maps:12.0.1'     testImplementation 'junit:junit:4.12'     androidTestImplementation 'com.android.support.test:runner:1.0.1'     androidTestImplementation 'com.android.support.test.espresso:espresso-core:3.0.1'     implementation 'com.android.support.constraint:constraint-layout:1.0.2'     implementation 'org.eclipse.paho:org.eclipse.paho.client.mqttv3:1.0.2'     implementation 'org.eclipse.paho:org.eclipse.paho.android.service:1.0.2'}repositories {     maven { url 'https://repo.eclipse.org/content/repositories/paho-releases/' }}
查看完整描述

3 回答

?
皈依舞

TA贡献1851条经验 获得超3个赞

对我来说,清理项目解决了这个问题

./gradlew clean


查看完整回答
反对 回复 2019-08-23
?
ibeautiful

TA贡献1993条经验 获得超5个赞

来自官方文件

如果类在运行时类路径上出现多次,则会出现类似于以下内容的错误:

Program type already present com.example.MyClass

由于下列情况之一,通常会发生此错误:

  • 二进制依赖项包括您的应用程序还包含的库作为直接依赖项。

    例如,您的应用程序声明对库A和库B的直接依赖,但库A已在其二进制文件中包含库B. 要解决此问题,请删除库B作为直接依赖项。

  • 您的应用程序在同一个库上具有本地二进制依赖项和远程二进制依赖项。

    要解决此问题,请删除其中一个二进制依赖项。(看看是否添加了相同的库作为jar和gradle依赖项)


查看完整回答
反对 回复 2019-08-23
  • 3 回答
  • 0 关注
  • 657 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信