Android - Junit - 测试项目使用外部 Jar

标签 android junit jar instrumentation

我想在另一个 Android 项目 (A) 中使用的库项目 (LIB) 中有一些 Java 代码(可以很好地为 Android 编译)。

由于 LIB 的代码不太可能改变太多,我选择将它作为一个 jar 添加到 A。它工作正常。

我有另一个项目是 Android 仪器项目,测试第一个 Android 项目 (B)。

所以我们现在拥有的是 A 包括 LIB 作为外部 jar,B 测试 A。

当我想从用 LIB 编写的 B 代码访问时,问题就开始了。 据我所知,除非我将 LIB 作为外部 jar 添加到 B,否则它会拒绝编译(也就是说,它无法访问 A 中包含的 LIB jar 中的代码)。

我不愿意将 LIB 作为外部 jar 添加到 B,因为: 1. 感觉不对,而且 2. 当运行测试失败时:

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

我找到了 Mike's question ,但他的解决方案仅涉及使用 ant 脚本进行编译,而我目前更喜欢将 Eclipse IDE 用于此项目。

知道如何解决这个问题吗?

最佳答案

(为了从“未回答”过滤器中删除此问题...)

这里列出了解决方案:

Android Testing: External libraries

LIB 应该从 A 导出,以便 B 可以访问它。

关于Android - Junit - 测试项目使用外部 Jar,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3914487/

相关文章:

java - Spring 3 @Autowired 注解问题

java - 出现错误 : platform DatabasePlatform does not support NativeSequence

java - 使用类路径参数运行 jar

Android Camera.takePicture() 有时不返回?

java - if 条件与 JUnit 的假设有何不同?

android - 无法从 Play 商店更新我的应用

java - 在unix中使用.sh文件运行.jar文件

java - matlab javaaddpath 不再工作(使用 jdk 1.7 构建的 jar)

java - Android 登录 Activity - 解析数据时出错 org.json.JSONException : Value  of type java. lang.String 无法转换为 JSONObject

android - 将生日放入联系人数据的正确方法是什么?