【问题标题】:Order of Android Private LibrariesAndroid 私有库的顺序
【发布时间】:2013-09-08 15:29:06
【问题描述】:

对于我的项目,以特定顺序导入外部 jar 非常重要。如果它们包含在 Android Private Libraries 下面,那么我怀疑它们是按字母(或随机)顺序导入的。是否可以控制 jar 在 Android Private Libraries 下面时的导入顺序?

背景:这是一个测试项目,我正在使用 Mockito 库(dexmaker、dexmaker-mockito 和 mockito-all)。据我所知,他们正在覆盖相同的方法,这使得订单很重要。当我最初设置这些库的顺序时(使用特定的 jar 导入而不是 Android Private Libraries 选项),还特别提到了顺序在我遵循的教程中很重要(遗憾的是我再也找不到链接了)。如果顺序不同,我会收到“测试运行失败:由于 'java.lang.IllegalAccessError' 而导致检测运行失败”。

【问题讨论】:

  • “对于我的项目,以特定顺序导入外部 jars 很重要”——为什么?你想达到什么目的?请记住,您不能编译具有多个类定义的项目,以防您认为通过控制顺序可以控制使用哪个版本的类。
  • @CommonsWare 这是一个测试项目,我正在使用 Mockito 库(dexmaker、dexmaker-mockito 和 mockito-all)。我认为他们正在覆盖相同的方法。在我最初设置这些库的顺序时,在我遵循的教程中还特别提到了顺序很重要(遗憾的是我再也找不到链接了)。如果顺序不同,我会收到“测试运行失败:由于 'java.lang.IllegalAccessError' 而导致检测运行失败”。
  • 喂。我认为你最好问问 Mockito 的人。
  • @CommonsWare 谢谢,我相应地编辑了帖子。
  • eclipse 还是安卓工作室?

标签: java android mockito


【解决方案1】:

我没有找到关于库的顺序,但我解决了导致我提出这个问题的问题。 当我收到“测试运行失败:由于 'java.lang.IllegalAccessError' 导致仪器运行失败”错误时,这不是因为 Mockito 相关库的顺序错误,而是因为 libs 文件夹中的一些其他库导致了冲突。当我删除这些额外的 jar-s 时,一切正常。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2019-04-19
    • 1970-01-01
    • 1970-01-01
    • 2013-06-28
    • 1970-01-01
    • 2012-05-31
    • 2017-06-11
    • 1970-01-01
    相关资源
    最近更新 更多