我通过将 jar 文件添加到我的 gradle 构建中,在我的项目中使用 Open Mobile API (SEEK API):
dependencies {compile files('libs/org.simalliance.openmobileapi.jar')}
它给了我这个异常(exception):
java.lang.IllegalAccessError: Class ref in pre-verified class resolved to unexpected implementation
at dalvik.system.DexFile.defineClassNative(Native Method)
at dalvik.system.DexFile.defineClass(DexFile.java:222)
at dalvik.system.DexFile.loadClassBinaryName(DexFile.java:215)
at dalvik.system.DexPathList.findClass(DexPathList.java:322)
at dalvik.system.BaseDexClassLoader.findClass(BaseDexClassLoader.java:65)
at java.lang.ClassLoader.loadClass(ClassLoader.java:497)
at java.lang.ClassLoader.loadClass(ClassLoader.java:457)
我的理解是我需要在编译过程中包含 jar,但在链接中排除它并且不将其导出到我的 APK。这通常是在 Eclipse 中使用一个简单的复选框来完成的,但我找不到用 gradle 来完成它的方法。
感谢任何帮助。
最佳答案
不导出您的 .jar THIS也许有帮助。 (读得好)
此外:
试试这个来消除错误:
Go to modules -> dependencies, then set scope of the lib to 'Provided'.
这是我的 source
关于android - Gradle:如何添加一个 jar 来构建但不导出它,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22134867/