簡體   English   中英

Android Studio 1.1.0:在庫中添加jar錯誤

[英]Android Studio 1.1.0 : adding jar in library error

我剛剛開始使用android studio 1.1.0,無法解決在我的項目中添加外部jar的問題。

我正在構建一個非常簡單的應用程序,只要不嘗試在我的應用程序模塊中添加外部jar,它就可以完美運行。 我嘗試添加的jar名為“ xstream-1.4.8.jar”。 我將jar文件粘貼到了我的應用模塊的'libs'文件夾中。 然后,在左側的項目瀏覽器選項卡中,我右鍵單擊“庫”部分中的“ xstream-1.4.8.jar”,然后選擇“添加為庫..”選項。

現在,我的應用模塊的src文件夾中的build.gradle的依賴項部分顯示為:

dependencies {
    compile fileTree(dir: 'libs', include: ['*.jar'])
    compile 'com.android.support:appcompat-v7:22.0.0'
    compile files('libs/xstream-1.4.8.jar')
}

當我構建項目時,它構建得很好,沒有任何錯誤。 但是,當我嘗試運行該應用程序時,出現以下錯誤:

事件日志顯示為:

在15秒內完成Gradle構建並出現1個錯誤

消息部分的內容為:

信息:分級任務[:app:assembleDebug]:app:preBuild UP-TO-DATE:app:preDebugBuild UP-TO-DATE:app:compileDebugNdk UP-TO-DATE:app:checkDebugManifest:app:preReleaseBuild UP-TO-DATE :app:prepareComAndroidSupportAppcompatV72200Library UP-TO-DATE:app:prepareComAndroidSupportSupportV42200Library UP-TO-DATE:app:prepareDebugDependencies:app:compileDebugAidl UP-TO-DATE:app:compileDebugRenderscript UP-TO-DATE:app:TOrateDebugBuild app:generateDebugAssets UP-TO-DATE:app:mergeDebugAssets UP-TO-DATE:app:generateDebugResValues UP-TO-DATE:app:generateDebugResources UP-TO-DATE:app:mergeDebugResources UP-TO-DATE:app:processDebugManifest UP- TO-DATE:app:processDebugResources UP-TO-DATE:app:generateDebugSources UP-TO-DATE:app:compileDebugJava UP-TO-DATE:app:preDexDebug不常見最高級別例外:com.android.dx.cf.iface。 ParseException:不良類文件魔術(cafebabe)或com.android.dx.cf.direct.DirectClassFile.parse0(DirectClassFile.jav)的版本(0034.0000) a:472),位於com.android.dx.cf.direct.DirectClassFile.parse(DirectClassFile.java:406),位於com.android.dx.cf.direct.DirectClassFile.parseToInterfacesIfNecessary(DirectClassFile.java:388),位於com.android .dx.cf.direct.DirectClassFile.getMagic(DirectClassFile.java:251)在com.android.dx.command.dexer.Main.processClass(Main.java:704)在com.android.dx.command.dexer.Main com.android.dx.command.dexer.Main.access $ 300(Main.java:83)的.processFileBytes(Main.java:673)com.android.dx.command.dexer.Main $ 1.processFileBytes(Main.java) :602)在com.android.dx.cf.direct.ClassPathOpener.processArchive(ClassPathOpener.java:284)在com.android.dx.cf.direct.ClassPathOpener.processOne(ClassPathOpener.java:166)在com.android。 com.android.dx.command.dexer.Main.processOne(Main.java:632)上com.android.dx.command.dexer.Main的dx.cf.direct.ClassPathOpener.process(ClassPathOpener.java:144) com.android.dx.command.dexer.Main.runMonoDex(Main.java:280)的com.android.dx.command.dexer.Ma的processAllFiles(Main.java:510) com.android.dx.command.dexer.Main.main(Main.java:215)的com.android.dx.command.Main.main(Main.java:106)的in.run(Main.java:246) ...解析com / thoughtworks / xstream / mapper / LambdaMapper.class 1錯誤時; 正在中止錯誤:任務':app:preDexDebug'的執行失敗。

com.android.ide.common.process.ProcessException:org.gradle.process.internal.ExecException:進程'命令'C:\\ Program Files \\ Java \\ jdk1.7.0_75 \\ bin \\ java.exe'以非零退出值1信息:BUILD FAILED

我已經嘗試過幾次清理項目,但這無濟於事。 每次嘗試運行該應用程序時,都會出現此錯誤。 我還在eclipse中使用相同的.jar文件構建了一個普通的Java項目,該文件可以完美運行而沒有任何問題。 我究竟做錯了什么?

您必須使用JDK 1.7編譯Java項目(jar)。

如果您使用JDK 1.8,則將目標設置為1.7

順便說一句,您不需要在build.gradle的依賴關系塊中添加此行。

compile files('libs/xstream-1.4.8.jar')

這條線就足夠了。

compile fileTree(dir: 'libs', include: ['*.jar'])

您可以使用:

dependencies {
    compile fileTree(dir: 'libs', include: ['*.jar'])
    compile 'com.android.support:appcompat-v7:22.0.0'
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM