gpt4 book ai didi

android - apkbuilder 在将 powermock 添加到 android 测试项目时发现重复文件

转载 作者:塔克拉玛干 更新时间:2023-11-02 22:38:12 27 4
gpt4 key购买 nike

我正在尝试将 powermock-mockito 和 mockito 添加到 Android 测试项目中。我使用 android 命令行工具创建了 android 测试项目,以创建 build.xml 和项目结构。我的 libs/目录中有以下 jar:

  • dexmaker-1.0.jar
  • dexmaker-mockito-1.0.jar
  • mockito-all-1.9.5.jar
  • powermock-mockito-1.5-full.jar

当我尝试使用 ant debug 构建项目时,出现以下错误:

[apkbuilder] Creating ProjectTests-debug-unaligned.apk and signing it with a debug key...
[apkbuilder] Found duplicate file for APK: mockito-extensions/org.mockito.plugins.MockMaker
[apkbuilder] Origin 1: /home/cmiller/Projects/android-project/ProjectTests/libs/powermock-mockito-1.5-full.jar
[apkbuilder] Origin 2: /home/cmiller/Projects/android-project/ProjectTests/libs/powermock-mockito-1.5-full.jar

BUILD FAILED
/home/cmiller/Applications/adt-bundle-linux/sdk/tools/ant/build.xml:951: The following error occurred while executing this line:
/home/cmiller/Applications/adt-bundle-linux/sdk/tools/ant/build.xml:962: The following error occurred while executing this line:
/home/cmiller/Applications/adt-bundle-linux/sdk/tools/ant/build.xml:319: com.android.sdklib.build.DuplicateFileException: Duplicate files at the same path inside the APK

我不确定它是如何在单个 jar 中找到重复文件的。 build.xml 文件根本没有被修改,我也没有创建 custom_rules.xml。任何帮助将不胜感激。

最佳答案

只需从其中一个 jar 中删除重复的类 org.mockito.plugins.MockMaker。我通过执行以下操作解决了这个问题:

  1. 备份powermock-mockito-1.5-full.jar
  2. powermock-mockito-1.5-full.jar 重命名为 powermock-mockito-1.5-full.zip
  3. 解压 powermock-mockito-1.5-full.zip
  4. rm -rf mockito-extensions
  5. jar cf powermock-mockito-1.5-full.jar META-INF/org/
  6. 将更新后的 jar 放在 libs 文件夹中。

关于android - apkbuilder 在将 powermock 添加到 android 测试项目时发现重复文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15796858/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com