2 个不同的 jar 文件中的重复类

问题描述 投票:0回答:1

screenshot 我有 2 个 jar 文件必须位于项目中,但它们在同一路径中具有相同的类。这些课程的内容有所不同。

我收到错误:

Duplicate class cn.pda.serialport.SerialPort found in modules Module_Android_Power.jar -> Module_Android_Power (Module_Android_Power.jar) and reader.jar -> reader (reader.jar)

重要!两个 jar 文件都必须位于项目中,并且都必须使用其 SerialPort 类。我不能只删除 1 个 jar 文件,或者让它们使用 1 个通用 SerialPort 类。

  1. 我尝试反编译该文件,更改路径,再编译回来,但编译过程中恰好出现了177个错误。
  2. 我尝试将项目拆分为模块。我这样做是为了在应用程序模块中我不导入包含冲突的 jar 文件的模块,而是导入导入包含 jar 文件的模块的模块。这没有帮助。
  3. 我试图弄清楚如何解决gradle冲突,尝试了替代方法,但没有成功。

如何解决这个冲突?

android gradle android-gradle-plugin
1个回答
0
投票

您需要排除

cn.pda.serialport.串口

来自依赖项之一的类。通常,您会将其从对您的项目不太重要或您控制较少的依赖项中排除。

示例(使用 Gradle): 假设 reader.jar 是您想要从中排除该类的依赖项,请将以下内容添加到您的模块级 build.gradle 文件中:

dependencies {
implementation('com.example:reader:1.0.0') {
    exclude group: 'cn.pda.serialport', module: 'serialport' 
}
// ... other dependencies

}

© www.soinside.com 2019 - 2024. All rights reserved.