En primer lugar, hay al menos 2 publicaciones con el mismo problema, pero estas soluciones ya no funcionan, al menos no en mi instalación.java.lang.IllegalArgumentException: ya se agregó: Lorg/hamcrest/BaseDescription; La conversión a formato Dalvik falló con el error 1
estoy usando M2e con Eclipse y Android y trató de ejecutar la aplicación como "aplicación Android" seleccionando plazo como-> aplicación de Android, pero siempre me sale este error:
UNEXPECTED TOP-LEVEL EXCEPTION: java.lang.IllegalArgumentException: already added: Lorg/hamcrest/BaseDescription;
. . .[2012-09-08 19:50:41 - net.mydomain.project-TRUNK] Conversion to Dalvik format failed with error 1
Es es el problema descrito here in Tools R14 section. Antes que nada, esto no se puede arreglar porque tengo este problema en ADT 20.0.3. En segundo lugar, no tengo estas carpetas llamadas "_src". Nunca los había visto en un proyecto de Maven antes, así que no sé qué debería hacer ahora. Ni siquiera tengo bibliotecas vinculadas dos veces. Al menos no veo algunos en mi proyecto. ¿Alguna idea de cómo hacer que esto funcione?
Aquí es mi pom.xml si esto ayuda:
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven- v4_0_0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>net.devgems.android</groupId>
<artifactId>kurzparkzonewien</artifactId>
<version>1.0-SNAPSHOT</version>
<packaging>apk</packaging>
<name>kurzparkzonewien</name>
<properties>
<platform.version>1.6_r2</platform.version>
<android.sdk.path>/opt/android-sdk-linux</android.sdk.path>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
</properties>
<dependencies>
<dependency>
<groupId>com.google.android</groupId>
<artifactId>android</artifactId>
<version>${platform.version}</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>com.googlecode.json-simple</groupId>
<artifactId>json-simple</artifactId>
<version>1.1.1</version>
</dependency>
<dependency>
<groupId>commons-io</groupId>
<artifactId>commons-io</artifactId>
<version>2.0.1</version>
</dependency>
<!-- Make sure this is below the android dependencies -->
<dependency>
<groupId>com.pivotallabs</groupId>
<artifactId>robolectric</artifactId>
<version>1.0-RC1</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>4.10</version>
<scope>test</scope>
</dependency>
</dependencies>
<build>
<outputDirectory>target/classes</outputDirectory>
<testOutputDirectory>target/test-classes</testOutputDirectory>
<plugins>
<plugin>
<groupId>com.jayway.maven.plugins.android.generation2</groupId>
<artifactId>android-maven-plugin</artifactId>
<version>3.1.1</version>
<configuration>
<androidManifestFile>${project.basedir}/AndroidManifest.xml</androidManifestFile>
<assetsDirectory>${project.basedir}/assets</assetsDirectory>
<resourceDirectory>${project.basedir}/res</resourceDirectory>
<nativeLibrariesDirectory>${project.basedir}/src/main/native</nativeLibrariesDirectory>
<sdk>
<platform>4</platform>
<path>${android.sdk.path}</path>
</sdk>
<undeployBeforeDeploy>true</undeployBeforeDeploy>
</configuration>
<extensions>true</extensions>
</plugin>
<plugin>
<artifactId>maven-compiler-plugin</artifactId>
<version>2.3.2</version>
<configuration>
<source>1.6</source>
<target>1.6</target>
</configuration>
</plugin>
</plugins>
</build>
</project>
Estoy usando Eclipse Juno, ADT 20.0.3, M2e 1.1.0.
Spot on! En mi caso, estaba tratando de usar ActionBarSherlock 4.2.0 como un proyecto de biblioteca, ¡y eso estaba trayendo JUnit 4.10 como una dependencia de mi proyecto! Cambiar JUnit de 4.10 a 4.8.1 en ActionBarSherlock Library pom.xml lo arregló. ¡Muchas gracias! –
Si desea continuar utilizando 4.10, puede excluir explícitamente el jar de hamcrest como una dependencia transitiva de JUnit. Esta es la manera de hacerlo en Gradle: instrumentTestCompile ('junit: junit: 4.10') { excluyen del grupo: 'org.hamcrest' } Vea aquí el equivalente Maven: http: // experto. apache.org/guides/introduction/introduction-to-optional-and-excludes-dependencies.html – Brendan