2015-10-26 89 views
3

當我JsonPath庫添加到我的Android工作室(1.4)項目中,我得到一個錯誤如下:Android Studio中添加JsonPath導致非零退出值2誤差

Error:Execution failed for task ':app:dexDebug'. \> 
com.android.ide.common.process.ProcessException: 
org.gradle.process.internal.ExecException: 
Process 'command 'C:\Program Files\JDK_64_bit\bin\java.exe'' finished with 
non-zero exit value 2 

(我通過添加庫文件>項目結構>依賴>庫的依賴>com.jayway.jsonpath:JSON路徑:2.0.0

試圖增加對應用MultiDex支持,在其他一些問題,結果表明在不同的錯誤:

Error:Execution failed for task ':app:packageAllDebugClassesForMultiDex'. \> 
java.util.zip.ZipException: duplicate entry: 
org/objectweb/asm/AnnotationVisitor.class 

我的項目中的外部庫列出了asm-1.0.2和asm-3.3.1,但刪除其中一個或兩者都不能解決我的問題。

的build.gradle:

apply plugin: 'com.android.application' 

android { 
compileSdkVersion 23 
buildToolsVersion "23.0.1" 

    defaultConfig { 
     applicationId "com.example.REDACTED.REDACTED" 
     minSdkVersion 19 
     targetSdkVersion 23 
     versionCode 1 
     versionName "1.0" 
     multiDexEnabled true 
    } 
    buildTypes { 
     release { 
      minifyEnabled false 
      proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' 
     } 
    } 

} 

dependencies { 

compile fileTree(include: ['*.jar'], dir: 'libs') 
compile 'com.android.support:appcompat-v7:23.1.0' 
compile 'com.jakewharton:butterknife:7.0.1' 
compile 'com.jayway.jsonpath:json-path:2.0.0' 
compile 'com.android.support:multidex:1.0.1' 
} 

app.iml(庫):

<orderEntry type="jdk" jdkName="Android API 23 Platform" jdkType="Android SDK" /> 
    <orderEntry type="sourceFolder" forTests="false" /> 
    <orderEntry type="library" exported="" name="butterknife-7.0.1" level="project" /> 
    <orderEntry type="library" exported="" name="asm-3.3.1" level="project" /> 
    <orderEntry type="library" exported="" name="multidex-1.0.1" level="project" /> 
    <orderEntry type="library" exported="" name="json-path-2.0.0" level="project" /> 
    <orderEntry type="library" exported="" name="asm-1.0.2" level="project" /> 
    <orderEntry type="library" exported="" name="support-v4-23.1.0" level="project" /> 
    <orderEntry type="library" exported="" name="slf4j-api-1.7.10" level="project" /> 
    <orderEntry type="library" exported="" name="appcompat-v7-23.1.0" level="project" /> 
    <orderEntry type="library" exported="" name="support-annotations-23.1.0" level="project" /> 
    <orderEntry type="library" exported="" name="json-smart-2.1.1" level="project" /> 

的AndroidManifest.xml:

<?xml version="1.0" encoding="utf-8"?> 
<manifest xmlns:android="http://schemas.android.com/apk/res/android" 
    package="com.example.REDACTED.REDACTED" > 
    <uses-permission android:name="android.permission.INTERNET" /> 
    <application 

     android:allowBackup="true" 
     android:icon="@mipmap/ic_launcher" 
     android:label="@string/app_name" 
     android:theme="@style/AppTheme"> 

     <activity 
      android:name=".MainActivity" 
      android:label="@string/app_name" > 

      <intent-filter> 
       <action android:name="android.intent.action.MAIN" /> 

       <category android:name="android.intent.category.LAUNCHER" /> 
      </intent-filter> 
     </activity> 
    </application> 

</manifest> 

非常感謝您提前!

+0

這裏有同樣的問題。你找到解決方案嗎? – AndroidMechanic

+0

2.1.0現在出來了,並嘗試使用它。有同樣的問題。使用multiDexEnabled,我得到錯誤:任務':app:packageAllDebugClassesForMultiDex'的執行失敗。 > java.util.zip.ZipException:重複條目:net/minidev/asm/ASMUtil.clas – AndroidMechanic

+0

另一個疑問:它是否意味着要與Android一起工作?我沒有看到任何理由,爲什麼它不應該,只是好奇,因爲經過兩天的努力,我無法找到任何解決方案。 – AndroidMechanic

回答

0

如果添加compile 'net.minidev:json-smart:2.2',問題將得到解決。

有關問題的更多背景信息,請參閱https://github.com/jayway/JsonPath/issues/116https://github.com/jayway/JsonPath/pull/108json-path的版本2.1.0尚未發佈,將指向2.2版本的json-smart,解決此問題。在此之前,上述解決方法是必要的。

+0

2.1.0現在出來,並嘗試使用它。有同樣的問題。使用multiDexEnabled,我得到錯誤:任務':app:packageAllDebugClassesForMultiDex'的執行失敗。 > java.util.zip.ZipException:重複項:net/minidev/asm/ASMUtil.class – AndroidMechanic

0
在你的build.gradle文件

添加以下代碼:

defaultConfig { 
    multiDexEnabled true 
    minSdkVersion 15 
    targetSdkVersion 23 
    versionCode 1 
    versionName "1.0" 
    } 

    dexOptions { 
    javaMaxHeapSize "4g" 
} 
相關問題