2014-03-02 54 views
4


我使用了開放移動API在我的項目(SEEK API)加入jar文件到我的gradle這個編譯:搖籃:如何添加一個罐子來構建,但沒有將其導出

dependencies {compile files('libs/org.simalliance.openmobileapi.jar')} 

它給了我這樣的例外:

 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) 

我的理解是我需要在編譯過程中的罐子,但在連接中排除,不將其導出到我的APK。這通常在eclipse中用一個簡單的複選框完成,但是我找不到用gradle來完成的方法。

任何幫助表示讚賞。

+0

你把它添加到相關模塊? –

+0

是的,我有。我編輯了這個問題,以反映它... –

+0

在我看來,圖書館被加載兩次! quadro檢查,請:) –

回答

4

不導出您的.jar THIS也許有幫助。 (讀起來很好)

此外:

試試這個擺脫錯誤的:

Go to modules -> dependencies, then set scope of the lib to 'Provided'.

這裏是我的source

+0

顯然,android-library插件會忽略提供的關鍵字。當我在我的應用程序中使用它時,它工作正常,當我在我的應用程序中使用它時,它將被忽略... –

+0

非常感謝 – Bibu