gpt4 book ai didi

java - IllegalAccessError 运行 android 仪器测试

转载 作者:行者123 更新时间:2023-11-30 02:58:55 24 4
gpt4 key购买 nike

我们在运行 android 仪器测试时遇到了一个奇怪的问题。出于某种原因,我们使用的库项目中的一个 jar 似乎在仪器测试打包期间被重新混淆,导致我们在访问该 jar 中的类时出现以下错误

java.lang.IllegalAccessError: Class ref in pre-verified class resolved to unexpected implementation

我们的结构是这样的

+library
-- libs/obfuscated.jar
+app
-- instrumentTest
-- src/main/java/etc
-- build.gradle
-- compile dependency to library (which contains obfuscated jar)

我们使用的是 gradle 1.11,android gradle build tools plugin 19.0.1,这个问题只在运行仪器测试时发生。混淆后的应用程序运行良好。

有没有人以前见过类似的问题,或者有没有办法阻止仪器测试 apk 一起被混淆?目前,我们针对我们的应用程序的混淆版本运行我们的仪器测试,针对非混淆版本运行它们不是我们的选择。

最佳答案

将测试源根从 instrumentTest 重命名为 androidTest 解决了这个问题。从插件 0.9.0 开始,默认的仪器测试源根目录是 androidTest。似乎是保留原始名称并将插件配置为使用原始名称导致了这些问题。

关于java - IllegalAccessError 运行 android 仪器测试,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22854700/

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