mapreduce repository cloudera-cdh mrunit

mapreduce - MRunit dependency latest in cloudera repository



cloudera-cdh (1)

En su declaración de dependencia de mrunit :

<dependency> <groupId>org.apache.mrunit</groupId> <artifactId>mrunit</artifactId> <version>${mrunit.version}</version> </dependency>

Debe agregar <classifier>hadoop2</classifier> para aclarar qué versión de hadoop desea usar , el valor del clasificador es hadoop1 o hadoop2.

Por lo tanto, debe cambiar la dependencia de pom.xml a este ya que usa Hadoop 2.X :

<dependency> <groupId>org.apache.mrunit</groupId> <artifactId>mrunit</artifactId> <version>${mrunit.version}</version> <classifier>hadoop2</classifier> </dependency>

No pude encontrar la última mrunit(1.1.0) en el repositorio de Cloudera . El disponible es 0.8.0-incubating . Lo siguiente es mi pom :

<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/xsd/maven-4.0.0.xsd"> <modelVersion>4.0.0</modelVersion> <groupId>com.ma.hadoop</groupId> <artifactId>MapReduce</artifactId> <version>0.0.1-SNAPSHOT</version> <properties> <hadoop.version>2.3.0-cdh5.1.2</hadoop.version> <hive.version>0.12.0-cdh5.1.2</hive.version> <mrunit.version>0.8.0-incubating</mrunit.version> </properties> <dependencies> <!-- For unit testing --> <dependency> <groupId>org.apache.mrunit</groupId> <artifactId>mrunit</artifactId> <version>${mrunit.version}</version> </dependency> <!-- This is sufficient for all --> <dependency> <groupId>org.apache.hadoop</groupId> <artifactId>hadoop-client</artifactId> <version>${hadoop.version}</version> </dependency> </dependencies> <build> <finalName>Mapred</finalName> <pluginManagement> <plugins> <plugin> <groupId>org.codehaus.mojo</groupId> <artifactId>exec-maven-plugin</artifactId> <version>1.2.1</version> </plugin> </plugins> </pluginManagement> <plugins> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-compiler-plugin</artifactId> <version>3.1</version> <configuration> <source>${jdk.version}</source> <target>${jdk.version}</target> </configuration> </plugin> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-jar-plugin</artifactId> <version>2.4</version> <configuration> <outputDirectory>${basedir}</outputDirectory> </configuration> </plugin> </plugins> </build> <repositories> <repository> <id>maven-hadoop</id> <name>Hadoop Releases</name> <url>https://repository.cloudera.com/content/repositories/releases/</url> </repository> <repository> <id>cloudera-repos</id> <name>Cloudera Repos</name> <url>https://repository.cloudera.com/artifactory/cloudera-repos/</url> </repository> </repositories> </project>

si cambio la versión a 1.1.0, eclipse arroja un artefacto que no se encuentra en la dependencia de mrunit en el archivo pom.

Intenté agregar apache repo

<id>central</id> <url>http://repo1.maven.org/maven2/</url> <repository>

Eclipse descarga el jar en el .m2 pero todavía obtengo el artefacto no encontrado. Una llamada de prueba de la unidad no se compilará. ¿Alguien puede ayudarme? ¿ mrunit es la forma más segura de utilizar la última mrunit con cloudera repo?

Gracias, Amit