2017-11-17 4 views
0

Ich habe versucht, die folgenden Fehler für Stunden nun fix:kann nicht Dex fusionieren - commons Apache

Error:Execution failed for task ':app:transformDexArchiveWithExternalLibsDexMergerForDebug'. java.lang.RuntimeException: com.android.builder.dexing.DexArchiveMergerException: Unable to merge dex

Ich arbeite auf einer Liste zu-do nach dieser Anleitung https://guides.codepath.com/android/Basic-Todo-App-Tutorial#persist-items-to-file

Es alles hat geklappt, aber nach dem ende bekomme ich immer den angezeigten fehler. ich schon versucht:

  1. reinigen und wieder aufbauen
  2. Löschen gradle
  3. MultiDex
  4. Neustarten Android Studio

das ist mein app.gradle

apply plugin: 'com.android.application' 

android { 

    compileSdkVersion 26 
    defaultConfig { 
     applicationId "com.example.android.organizesify2" 
     minSdkVersion 15 
     targetSdkVersion 26 
     versionCode 1 
     versionName "1.0" 
     multiDexEnabled true 
     testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner" 
    } 
    buildTypes { 
     release { 
      minifyEnabled false 
      proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' 
     } 
    } 
} 

dependencies { 
    compile 'org.apache.commons:commons-io:1.3.2' 
    implementation fileTree(dir: 'libs', include: ['*.jar']) 
    implementation 'com.android.support:appcompat-v7:26.1.0' 
    implementation 'com.android.support.constraint:constraint-layout:1.0.2' 
    implementation 'com.android.support:design:26.1.0' 
    testImplementation 'junit:junit:4.12' 
    androidTestImplementation 'com.android.support.test:runner:1.0.1' 
    androidTestImplementation 'com.android.support.test.espresso:espresso-core:3.0.1' 
} 

ermöglichen und Das ist meine Java-Cla ss:

package com.example.android.organizesify2; 

import android.support.v7.app.AppCompatActivity; 
import android.os.Bundle; 
import android.view.Menu; 
import android.view.MenuItem; 
import android.view.View; 
import android.widget.AdapterView; 
import android.widget.ArrayAdapter; 
import android.widget.EditText; 
import android.widget.ListView; 
import android.widget.Toast; 

import org.apache.commons.io.FileUtils; 

import java.io.File; 
import java.io.IOException; 
import java.util.ArrayList; 

public class ToDoList extends AppCompatActivity { 

    private ArrayList<String> items; 
    private ArrayAdapter<String> itemsAdapter; 
    private ListView lvItems; 


    @Override 
    public boolean onOptionsItemSelected(MenuItem item) { 

     int id = item.getItemId(); 
     if (id== R.id.toDoList) 
     { 
      Toast.makeText(this, "Settings", Toast.LENGTH_LONG).show(); 
     }else if (id== R.id.aboutus){ 
      Toast.makeText(this, "About us", Toast.LENGTH_LONG).show(); 

     } 
     return super.onOptionsItemSelected(item); 
    } 

    @Override 
    protected void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     setContentView(R.layout.activity_to_do_list); 

     lvItems = (ListView) findViewById(R.id.lvItems); 


     readItems(); 


     itemsAdapter = new ArrayAdapter<String>(this, android.R.layout.simple_list_item_1 
       ,items); 



     lvItems.setAdapter(itemsAdapter); 
     setupListViewListener(); 


    } 


    @Override 
    public boolean onCreateOptionsMenu(Menu menu) { 

     getMenuInflater().inflate(R.menu.menu, menu); 
     return super.onCreateOptionsMenu(menu); 

    } 



    public void onAddItem(View view){ 
     EditText etNewItem = (EditText) findViewById(R.id.etNewItem); 
     String itemText = etNewItem.getText().toString(); 
     itemsAdapter.add(itemText); 
     etNewItem.setText(""); 
     writeItems(); 
    } 



    private void setupListViewListener(){ 
     lvItems.setOnItemLongClickListener(new AdapterView.OnItemLongClickListener() { 
      @Override 
      public boolean onItemLongClick(AdapterView<?> adapter, View item, int pos, long id) { 

       items.remove(pos); 

       itemsAdapter.notifyDataSetChanged(); 

       writeItems(); 
       //Toast.makeText(ToDoList.this, "DONE", Toast.LENGTH_LONG).show(); 

       return true; 
      } 
     }); 
    } 


    private void readItems(){ 

     File filesDir = getFilesDir(); 
     File todoFile = new File(filesDir, "todo.txt"); 

     try 
     { 
      items = new ArrayList<String>(FileUtils.readLines(todoFile)); 
     } 
     catch(IOException e){ 
      items = new ArrayList<String>(); 
     } 
    } 


    private void writeItems(){ 
     File filesDir = getFilesDir(); 
     File todoFile = new File(filesDir, "todo.txt"); 

     try{ 
      FileUtils.writeLines(todoFile, items); 

     } catch (IOException e){ 
      e.printStackTrace(); 
     } 
    } 

} 
+0

Das klingt vielleicht albern, aber haben Sie aus android Studio beendet und es erneut gestartet? Vielleicht schalten Sie den Computer sogar aus. Dies hat ein paar Android-Studio-Probleme für mich gelöst und könnte ein paar Minuten wert sein, um zu versuchen, seit Sie es schon seit einer Weile waren. – applecrusher

+0

wie ich in "4." sagte Das habe ich schon probiert. Hat nicht geholfen .... Aber danke für die Hilfe! @Anlagenbrecher –

Antwort

2

I alte Kompilierung 'org.apache.commons: commons-io: 1.3.2' gelöst für Kompilierung Gruppe: 'commons-io', name: 'commons-io', Version: ' 2.4 '

Verwandte Themen