Author: cutting
Date: Thu May 9 21:13:58 2013
New Revision: 1480775
URL: http://svn.apache.org/r1480775
Log:
AVRO-1322. Java: Add Hadoop version classifier to trevni-avro Maven artifacts.
Contributed by massie.
Modified:
avro/trunk/CHANGES.txt
avro/trunk/lang/java/trevni/avro/pom.xml
Modified: avro/trunk/CHANGES.txt
URL:
http://svn.apache.org/viewvc/avro/trunk/CHANGES.txt?rev=1480775&r1=1480774&r2=1480775&view=diff
==============================================================================
--- avro/trunk/CHANGES.txt (original)
+++ avro/trunk/CHANGES.txt Thu May 9 21:13:58 2013
@@ -77,6 +77,9 @@ Trunk (not yet released)
AVRO-1326. Java: Fix bug in BZip2 codec. (cutting)
+ AVRO-1322. Java: Add Hadoop version classifier to trevni-avro
+ Maven artifacts. (massie)
+
Avro 1.7.4 (22 February 2012)
NEW FEATURES
Modified: avro/trunk/lang/java/trevni/avro/pom.xml
URL:
http://svn.apache.org/viewvc/avro/trunk/lang/java/trevni/avro/pom.xml?rev=1480775&r1=1480774&r2=1480775&view=diff
==============================================================================
--- avro/trunk/lang/java/trevni/avro/pom.xml (original)
+++ avro/trunk/lang/java/trevni/avro/pom.xml Thu May 9 21:13:58 2013
@@ -50,18 +50,6 @@
<version>${junit.version}</version>
<scope>test</scope>
</dependency>
- <dependency>
- <groupId>org.apache.avro</groupId>
- <artifactId>avro-mapred</artifactId>
- <version>${project.version}</version>
- <scope>compile</scope>
- </dependency>
- <dependency>
- <groupId>org.apache.hadoop</groupId>
- <artifactId>hadoop-core</artifactId>
- <version>${hadoop1.version}</version>
- <scope>compile</scope>
- </dependency>
</dependencies>
<build>
@@ -70,10 +58,104 @@
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-checkstyle-plugin</artifactId>
</plugin>
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-jar-plugin</artifactId>
+ <executions>
+ <execution>
+ <id>main</id>
+ <goals><goal>jar</goal></goals>
+ <phase>package</phase>
+ </execution>
+ <execution>
+ <id>with-classifier</id>
+ <goals><goal>jar</goal></goals>
+ <phase>package</phase>
+ <configuration>
+ <classifier>${envClassifier}</classifier>
+ </configuration>
+ </execution>
+ </executions>
+ </plugin>
</plugins>
</build>
<profiles>
+ <profile>
+ <id>hadoop1</id>
+ <activation>
+ <property>
+ <name>!hadoop.version</name> <!-- if no hadoop.version is set -->
+ </property>
+ </activation>
+ <properties>
+ <envClassifier>hadoop1</envClassifier>
+ </properties>
+ <dependencies>
+ <dependency>
+ <groupId>org.apache.hadoop</groupId>
+ <artifactId>hadoop-core</artifactId>
+ <version>${hadoop1.version}</version>
+ <!-- hadoop's execution environment provides its own jars, usurping
any others.
+ So we should not include it here -->
+ <scope>provided</scope>
+ </dependency>
+ <dependency>
+ <groupId>org.apache.avro</groupId>
+ <artifactId>avro-mapred</artifactId>
+ <version>${project.version}</version>
+ <classifier>hadoop1</classifier>
+ <scope>compile</scope>
+ </dependency>
+ </dependencies>
+ </profile>
+ <profile>
+ <id>hadoop2</id>
+ <activation>
+ <property>
+ <name>hadoop.version</name>
+ <value>2</value>
+ </property>
+ </activation>
+ <properties>
+ <envClassifier>hadoop2</envClassifier>
+ </properties>
+ <dependencies>
+ <dependency>
+ <groupId>org.apache.hadoop</groupId>
+ <artifactId>hadoop-client</artifactId>
+ <version>${hadoop2.version}</version>
+ <!-- hadoop's execution environment provides its own jars, usurping
any others.
+ So we should not include it here -->
+ <scope>provided</scope>
+ </dependency>
+ <dependency>
+ <groupId>org.apache.hadoop</groupId>
+ <artifactId>hadoop-mapreduce-client-common</artifactId>
+ <version>${hadoop2.version}</version>
+ <scope>test</scope> <!-- for LocalJobRunner -->
+ </dependency>
+ <dependency>
+ <groupId>commons-httpclient</groupId>
+ <artifactId>commons-httpclient</artifactId>
+ <version>${commons-httpclient.version}</version>
+ <scope>test</scope> <!-- for LocalJobRunner -->
+ </dependency>
+ <dependency>
+ <groupId>org.apache.avro</groupId>
+ <artifactId>avro-mapred</artifactId>
+ <version>${project.version}</version>
+ <classifier>hadoop2</classifier>
+ <scope>compile</scope>
+ </dependency>
+ <dependency>
+ <groupId>org.apache.avro</groupId>
+ <artifactId>avro</artifactId>
+ <version>${project.version}</version>
+ <scope>compile</scope>
+ </dependency>
+ </dependencies>
+ </profile>
</profiles>
</project>