uni-app HBuilderX 4.36版本打包无问题,更新HBuilderX版本后打包提示App原生语言插件/uts插件依赖的三方库冲突

发布于 1周前 作者 wuwangju 来自 Uni-App

uni-app HBuilderX 4.36版本打包无问题,更新HBuilderX版本后打包提示App原生语言插件/uts插件依赖的三方库冲突
HBuilderX 4.36版本 没问题,更新HBuilderX 版本之后打包就提示:App原生语言插件/uts插件 依赖的三方库冲突

错误解决方案

错误描述:

App原生语言插件/uts插件 依赖的三方库冲突

解决方案:

请根据错误信息修改 App原生语言插件/uts插件 依赖的三方库或联系插件作者解决。

错误详情:

FAILURE: Build failed with an exception.

* What went wrong:
Execution failed for task ':app:checkReleaseDuplicateClasses'.
> A failure occurred while executing com.android.build.gradle.internal.tasks.CheckDuplicatesRunnable
   > Duplicate class a.a found in modules LocalOperationSdk.aar -> jetified-LocalOperationSdk-runtime (LocalOperationSdk.aar) and lib.5plus.base-release.aar -> jetified-lib.5plus.base-release-runtime (lib.5plus.base-release.aar)
   > Duplicate class a0.a found in modules LocalOperationSdk.aar -> jetified-LocalOperationSdk-runtime (LocalOperationSdk.aar) and lib.5plus.base-release.aar -> jetified-lib.5plus.base-release-runtime (lib.5plus.base-release.aar)
   > ... (更多重复类省略)

* Try:
Run with --debug option to get more log output.
Run with --scan to get full insights.
Get more help at https://help.gradle.org.

* Exception is:
org.gradle.api.tasks.TaskExecutionException: Execution failed for task ':app:checkReleaseDuplicateClasses'.
at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.lambda$executeIfValid$1(ExecuteActionsTaskExecuter.java:130)
at org.gradle.internal.Try$Failure.ifSuccessfulOrElse(Try.java:293)
at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.executeIfValid(ExecuteActionsTaskExecuter.java:128)
... (更多异常堆栈信息省略)
Caused by: java.lang.RuntimeException: Duplicate class a.a found in modules LocalOperationSdk.aar -> jetified-LocalOperationSdk-runtime (LocalOperationSdk.aar) and lib.5plus.base-release.aar -> jetified-lib.5plus.base-release-runtime (lib.5plus.base-release.aar)
... (更多重复类省略)

建议:

Go to the documentation to learn how to Fix dependency resolution errors.

开发环境与版本信息

项目创建方式 HBuilderX
版本号 4.36

1 回复

针对您提到的在更新HBuilderX版本后打包uni-app项目出现的“App原生语言插件/uts插件依赖的三方库冲突”问题,这通常是由于新版本HBuilderX中集成的原生插件或依赖库与项目中的某些库版本不兼容所导致的。解决这类问题通常需要检查并更新或替换冲突的三方库。以下是一个可能的解决方案,涉及到如何定位冲突并尝试解决它,注意这里不会给出具体的“建议”,而是提供一个示例代码框架和检查步骤来帮助您理解和解决问题。

步骤一:定位冲突

  1. 查看日志:首先,仔细查看打包时的错误日志,找到具体是哪个库或插件产生了冲突。

  2. 对比版本:对比新旧HBuilderX版本中涉及冲突的库或插件的版本号,确认是否有升级或变更。

步骤二:解决冲突

假设冲突来源于某个特定的第三方库(如conflict-lib),以下是一个可能的解决框架:

# 假设您的项目根目录下有一个package.json和native-plugins.json文件

# 1. 更新或替换冲突库
# 在package.json中指定一个兼容版本,或者尝试移除后重新安装
npm uninstall conflict-lib
npm install conflict-lib@compatible-version

# 2. 检查原生插件依赖
# 查看native-plugins.json中是否有提及uts插件或相关依赖,并检查其版本
# 如果发现版本不兼容,尝试手动修改native-plugins.json中的版本号(注意:这可能需要您对原生开发有一定了解)

# 示例:修改native-plugins.json中的uts插件版本
# {
#   "uts-plugin": {
#     "version": "compatible-version"
#   }
# }

# 注意:直接修改native-plugins.json可能不是官方推荐的做法,这里仅作为示例展示思路。
# 实际操作中,您可能需要通过HBuilderX的插件管理界面进行更新或查阅官方文档了解如何正确处理。

步骤三:重新打包测试

在做出上述修改后,使用更新后的HBuilderX版本重新打包应用,观察是否解决了冲突问题。

注意

  • 备份:在进行任何修改前,请确保已备份您的项目代码和配置文件。
  • 官方文档:查阅HBuilderX和uni-app的官方文档,了解关于插件管理和依赖管理的最佳实践。
  • 社区支持:如果问题依旧存在,考虑在HBuilderX或uni-app的官方社区寻求帮助,那里有许多经验丰富的开发者可能遇到过类似问题。
回到顶部