You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@hbase.apache.org by st...@apache.org on 2010/01/10 03:13:16 UTC

svn commit: r897587 - in /hadoop/hbase/trunk: ./ ivy/ lib/ lib/jsp-2.1/ src/contrib/ src/contrib/stargate/ src/contrib/stargate/lib/ src/contrib/transactional/

Author: stack
Date: Sun Jan 10 02:13:13 2010
New Revision: 897587

URL: http://svn.apache.org/viewvc?rev=897587&view=rev
Log:
HBASE-1433 Update hbase build to match core, use ivy, publish jars to maven repo, etc.

Added:
    hadoop/hbase/trunk/ivy/
    hadoop/hbase/trunk/ivy-targets.xml
    hadoop/hbase/trunk/ivy.xml
    hadoop/hbase/trunk/ivy/ivy-2.1.0.jar   (with props)
    hadoop/hbase/trunk/ivy/ivysettings.xml
    hadoop/hbase/trunk/ivy/libraries.properties
    hadoop/hbase/trunk/src/contrib/stargate/ivy.xml
    hadoop/hbase/trunk/src/contrib/transactional/ivy.xml
Removed:
    hadoop/hbase/trunk/lib/avro-1.2.0.jar
    hadoop/hbase/trunk/lib/commons-cli-2.0-SNAPSHOT.jar
    hadoop/hbase/trunk/lib/commons-el-from-jetty-5.1.4.jar
    hadoop/hbase/trunk/lib/commons-httpclient-3.0.1.jar
    hadoop/hbase/trunk/lib/commons-logging-1.0.4.jar
    hadoop/hbase/trunk/lib/commons-logging-api-1.0.4.jar
    hadoop/hbase/trunk/lib/commons-math-1.1.jar
    hadoop/hbase/trunk/lib/hadoop-core-0.21.0-SNAPSHOT-r832250.jar
    hadoop/hbase/trunk/lib/hadoop-core-test-0.21.0-SNAPSHOT-r832250.jar
    hadoop/hbase/trunk/lib/hadoop-hdfs-0.21.0-dev-r836012.jar
    hadoop/hbase/trunk/lib/hadoop-hdfs-test-0.21.0-dev-r836012.jar
    hadoop/hbase/trunk/lib/hadoop-mapred-0.21.0-dev-r833993.jar
    hadoop/hbase/trunk/lib/hadoop-mapred-test-0.21.0-dev-r833993.jar
    hadoop/hbase/trunk/lib/jasper-compiler-5.5.12.jar
    hadoop/hbase/trunk/lib/jasper-runtime-5.5.12.jar
    hadoop/hbase/trunk/lib/jetty-6.1.14.jar
    hadoop/hbase/trunk/lib/jetty-util-6.1.14.jar
    hadoop/hbase/trunk/lib/jruby-complete-1.3.1.jar
    hadoop/hbase/trunk/lib/jruby-complete-LICENSE.txt
    hadoop/hbase/trunk/lib/json.jar
    hadoop/hbase/trunk/lib/jsp-2.1/
    hadoop/hbase/trunk/lib/junit-4.7.jar
    hadoop/hbase/trunk/lib/log4j-1.2.15.jar
    hadoop/hbase/trunk/lib/lucene-core-2.2.0.jar
    hadoop/hbase/trunk/lib/servlet-api-2.5-6.1.14.jar
    hadoop/hbase/trunk/src/contrib/stargate/lib/asm-3.1.jar
    hadoop/hbase/trunk/src/contrib/stargate/lib/commons-codec-1.3.jar
    hadoop/hbase/trunk/src/contrib/stargate/lib/jackson-asl-0.9.4.jar
    hadoop/hbase/trunk/src/contrib/stargate/lib/jaxb-impl-2.1.10.jar
    hadoop/hbase/trunk/src/contrib/stargate/lib/jersey-core-1.1.0-ea.jar
    hadoop/hbase/trunk/src/contrib/stargate/lib/jersey-json-1.1.0-ea.jar
    hadoop/hbase/trunk/src/contrib/stargate/lib/jersey-server-1.1.0-ea.jar
    hadoop/hbase/trunk/src/contrib/stargate/lib/jsr311-api-1.1.jar
    hadoop/hbase/trunk/src/contrib/stargate/lib/persistence-api-1.0.jar
    hadoop/hbase/trunk/src/contrib/stargate/lib/protobuf-java-2.1.0.jar
Modified:
    hadoop/hbase/trunk/CHANGES.txt
    hadoop/hbase/trunk/build.xml
    hadoop/hbase/trunk/src/contrib/build-contrib.xml
    hadoop/hbase/trunk/src/contrib/stargate/build.xml
    hadoop/hbase/trunk/src/contrib/transactional/build.xml

Modified: hadoop/hbase/trunk/CHANGES.txt
URL: http://svn.apache.org/viewvc/hadoop/hbase/trunk/CHANGES.txt?rev=897587&r1=897586&r2=897587&view=diff
==============================================================================
--- hadoop/hbase/trunk/CHANGES.txt (original)
+++ hadoop/hbase/trunk/CHANGES.txt Sun Jan 10 02:13:13 2010
@@ -296,6 +296,8 @@
   NEW FEATURES
    HBASE-1901  "General" partitioner for "hbase-48" bulk (behind the api, write
                hfiles direct) uploader
+   HBASE-1433  Update hbase build to match core, use ivy, publish jars to maven
+               repo, etc. (Kay Kay via Stack)
 
   OPTIMIZATIONS
    HBASE-410   [testing] Speed up the test suite

Modified: hadoop/hbase/trunk/build.xml
URL: http://svn.apache.org/viewvc/hadoop/hbase/trunk/build.xml?rev=897587&r1=897586&r2=897587&view=diff
==============================================================================
--- hadoop/hbase/trunk/build.xml (original)
+++ hadoop/hbase/trunk/build.xml Sun Jan 10 02:13:13 2010
@@ -88,6 +88,14 @@
     </and>
   </condition>
 
+  <property name="build.dir" location="${basedir}/build" />
+  <property name="lib.dir" value="${basedir}/lib"/>   
+  <property name="build.ivy.dir" location="${build.dir}/ivy" />
+  <property name="hbase.root" location="." />
+  <property name="ivy.dir" location="${hbase.root}/ivy" />
+  
+  <import file="${basedir}/ivy-targets.xml" />
+  
   <!--We need to have the hadoop jars ride in front of the hbase classes or we
     get the below exceptions:
 
@@ -95,16 +103,19 @@
 
     When we move off 0.16.0 hadoop, fix HttpStatusServer
    -->
-  <fileset id="lib.jars" dir="${basedir}" includes="lib/*.jar"/>
   <path id="classpath">
-    <fileset refid="lib.jars"/>
-    <fileset dir="${lib.dir}/jsp-2.1/">
+    <fileset dir="${common.ivy.lib.dir}">
       <include name="*jar" />
     </fileset>
+  	<fileset dir="${lib.dir}">
+      <include name="libthrift-*.jar" />   
+      <include name="zookeeper*.jar" />   
+    </fileset>
     <pathelement location="${build.classes}"/>
     <pathelement location="${conf.dir}"/>
   </path>
 
+  
   <target name="init">
     <mkdir dir="${build.dir}"/>
     <mkdir dir="${build.classes}"/>
@@ -124,7 +135,10 @@
     <!--Copy bin, lib, and conf. too-->
     <mkdir dir="${build.lib}"/>
     <copy todir="${build.lib}">
-      <fileset dir="${lib.dir}" />
+      <fileset dir="${lib.dir}" >
+      	<include name="zookeeper*" />
+      	<include name="libthrift* "/>
+      </fileset>	
     </copy>
     <mkdir dir="${build.conf}"/>
     <copy todir="${build.conf}">
@@ -147,7 +161,7 @@
     </exec>
   </target>
 
-  <target name="compile-core" depends="clover,init,jspc" description="Compile hbase core">
+  <target name="compile-core" depends="clover,init,ivy-retrieve-common,jspc" description="Compile hbase core">
    <!--Compile whats under src and generated java classes made from jsp-->
    <javac
     encoding="${build.encoding}"
@@ -166,13 +180,13 @@
      <subant target="compile">
         <property name="version" value="${version}"/>
         <fileset file="${contrib.dir}/build.xml"/>
-     </subant>  	
+     </subant>    
   </target>
 
   <target name="compile" depends="compile-core, compile-contrib"
      description="Compile core, contrib">
   </target>
-	
+  
   <target name="jar" depends="compile"
        description="Build jar">
     <!--Copy over any properties under src-->
@@ -187,9 +201,9 @@
       </fileset>
       <zipfileset dir="conf" prefix="conf" includes="hbase-default.xml" />
       <zipfileset dir="${build.webapps}" prefix="webapps"/>
-   		<manifest>
+      <manifest>
             <attribute name="Main-Class" value="org/apache/hadoop/hbase/mapreduce/Driver" />
-    	</manifest>
+      </manifest>
     </jar>
   </target>
 
@@ -198,14 +212,13 @@
      -->
   <target name="jspc" depends="init" unless="jspc.not.required">
     <path id="jspc.classpath">
-      <fileset dir="${basedir}/lib/jsp-2.1/">
-        <include name="*jar" />
-      </fileset>
-      <fileset dir="${basedir}/lib/">
+      <fileset dir="${common.ivy.lib.dir}">
         <include name="servlet-api*jar" />
         <include name="commons-logging*jar" />
         <include name="jasper-*jar" />
         <include name="jetty-*jar" />
+      	<include name="jsp-*jar" />
+      	<include name="commons-el*jar" />
       </fileset>
     </path>
     <taskdef classname="org.apache.jasper.JspC" name="jspcompiler" >
@@ -290,7 +303,7 @@
       <property name="version" value="${version}"/>
       <property name="dist.dir" value="${dist.dir}"/>
       <fileset file="${contrib.dir}/build.xml"/>
-    </subant>  	
+    </subant>   
     <mkdir dir="${dist.dir}/webapps"/>
     <copy todir="${dist.dir}/webapps">
       <fileset dir="${build.webapps}" />
@@ -413,11 +426,11 @@
       doctitle="${Name} ${version} API"
       bottom="Copyright &amp;copy; ${year} The Apache Software Foundation"
       >
-    	<packageset dir="${src.dir}">
+      <packageset dir="${src.dir}">
           <include name="org/apache/**"/>
           <exclude name="org/onelab/**"/>
           <exclude name="org/apache/hadoop/hbase/thrift/generated/**"/>
-    	</packageset>
+      </packageset>
         <link href="${javadoc.link.java}"/>
         <classpath >
           <path refid="classpath" />
@@ -426,10 +439,10 @@
           </fileset>
           <pathelement path="${java.class.path}"/>
         </classpath>
-    	<packageset dir="src/contrib/transactional/src/java"/>
-    	<packageset dir="src/contrib/stargate/src/java"/>
+      <packageset dir="src/contrib/transactional/src/java"/>
+      <packageset dir="src/contrib/stargate/src/java"/>
     </javadoc>
-  </target>	
+  </target> 
 
   <!-- ================================================================== -->
   <!-- Run unit tests                                                     -->
@@ -439,18 +452,26 @@
            ${src.test} *must* come before rest of class path. Otherwise
                     the test hbase-site.xml will not be found.
          ============  *  *  *  *  *  N O T E  *  *  *  *  * ============ -->
+
     <pathelement location="${src.test}"/>
     <pathelement location="${build.test}" />
-    <path refid="classpath"/>
+  	<path  refid="classpath" />
+    <fileset dir="${test.ivy.lib.dir}">
+      <include name="*jar" />
+    </fileset>
     <pathelement location="${build.dir}"/>
     <pathelement path="${clover.jar}"/>
   </path>
+	
+  <target name="test.list">
+  	<echo message="${toString:test.classpath}"/>
+  </target>	
 
   <!--'compile-test' used to depend on 'compile' but removed it. Hudson doesn't like
       redoing init and jscpc at this stage of the game; i.e. the prereqs
       for compile.  TODO: Investigate why.  For now, test will fail
       if not preceeded by manual 'jar' or 'compile' invokation -->
-  <target name="compile-core-test" depends="compile" description="Build test jar">
+  <target name="compile-core-test" depends="compile,ivy-retrieve-test" description="Build test jar">
     <javac encoding="${build.encoding}" 
        srcdir="${src.test}" 
        includes="**/*.java" 
@@ -472,8 +493,8 @@
     </jar>
   </target>
 
-  <target name="test-core" depends="compile-core-test"
-   	  description="Build test jar and run tests">
+  <target name="test-core" depends="compile-core-test,test.list"
+      description="Build test jar and run tests">
     <delete dir="${test.log.dir}"/>
     <mkdir dir="${test.log.dir}"/>
     <junit
@@ -522,7 +543,7 @@
   <target name="clean-contrib" description="Clean contrib">
      <subant target="clean">        
         <fileset file="src/contrib/build.xml"/>
-     </subant>  	
+     </subant>    
   </target>
   <target name="clean" depends="clean-contrib" description="Clean all old builds">
     <delete dir="${build.dir}"/>

Added: hadoop/hbase/trunk/ivy-targets.xml
URL: http://svn.apache.org/viewvc/hadoop/hbase/trunk/ivy-targets.xml?rev=897587&view=auto
==============================================================================
--- hadoop/hbase/trunk/ivy-targets.xml (added)
+++ hadoop/hbase/trunk/ivy-targets.xml Sun Jan 10 02:13:13 2010
@@ -0,0 +1,92 @@
+<project basedir="." xmlns:ivy="antlib:org.apache.ivy.ant">
+  <!-- IVY properteis set here -->
+  <property name="ivy.repo.dir" value="${user.home}/ivyrepo" />
+
+  <loadproperties srcfile="${ivy.dir}/libraries.properties" />
+  <property name="asfrepo" value="https://repository.apache.org/content/repositories/snapshots" />
+  <property name="mvnrepo" value="http://repo2.maven.org/maven2" />
+  <property name="ivy.jar" location="${ivy.dir}/ivy-${ivy.version}.jar" />
+  <property name="ant_task.jar" location="${ivy.dir}/maven-ant-tasks-${ant-task.version}.jar" />
+  <property name="ant_task_repo_url" value="${mvnrepo}/org/apache/maven/maven-ant-tasks/${ant-task.version}/maven-ant-tasks-${ant-task.version}.jar" />
+  <property name="ivy_repo_url" value="${mvnrepo}/org/apache/ivy/ivy/${ivy.version}/ivy-${ivy.version}.jar" />
+  <property name="ivysettings.xml" location="${ivy.dir}/ivysettings.xml" />
+  <property name="ivy.org" value="org.apache.hadoop" />
+
+  <property name="build.ivy.dir" location="${build.dir}/ivy" />
+  <property name="build.ivy.lib.dir" location="${build.ivy.dir}/lib" />
+  <property name="common.ivy.lib.dir" location="${build.ivy.lib.dir}/common" />
+  <property name="test.ivy.lib.dir" location="${build.ivy.lib.dir}/test" />
+  <property name="build.ivy.report.dir" location="${build.ivy.dir}/report" />
+  <property name="build.ivy.maven.dir" location="${build.ivy.dir}/maven" />
+
+  <!--this is the naming policy for artifacts we want pulled down-->
+  <property name="ivy.module" location="hadoop-hbase" />
+  <property name="ivy.artifact.retrieve.pattern" value="[conf]/[artifact]-[revision].[ext]" />
+
+  <property name="ivyresolvelog" value="download-only"/>
+  <property name="ivyretrievelog" value="default"/>
+  
+  <target name="ivy-init-dirs">
+    <mkdir dir="${build.ivy.dir}" />
+    <mkdir dir="${build.ivy.lib.dir}" />
+    <mkdir dir="${build.ivy.report.dir}" />
+    <mkdir dir="${build.ivy.maven.dir}" />
+    <mkdir dir="${common.ivy.lib.dir}" />
+  </target>
+
+  <target name="ivy-probe-antlib">
+    <condition property="ivy.found">
+      <typefound uri="antlib:org.apache.ivy.ant" name="cleancache" />
+    </condition>
+  </target>
+
+  <target name="ivy-download" description="To download ivy" unless="offline">
+    <get src="${ivy_repo_url}" dest="${ivy.jar}" usetimestamp="true" />
+  </target>
+
+  <target name="ivy-init-antlib" depends="ivy-download,ivy-init-dirs,ivy-probe-antlib" unless="ivy.found">
+    <typedef uri="antlib:org.apache.ivy.ant" onerror="fail" loaderRef="ivyLoader">
+      <classpath>
+        <pathelement location="${ivy.jar}" />
+      </classpath>
+    </typedef>
+    <fail>
+      <condition>
+        <not>
+          <typefound uri="antlib:org.apache.ivy.ant" name="cleancache" />
+        </not>
+      </condition>
+        You need Apache Ivy 2.0 or later from http://ant.apache.org/
+        It could not be loaded from ${ivy_repo_url}
+      </fail>
+  </target>
+
+
+  <target name="ivy-init" depends="ivy-init-antlib">
+
+    <!--Configure Ivy by reading in the settings file
+          If anyone has already read in a settings file into this settings ID, it gets priority
+      -->
+    <ivy:configure settingsid="${ant.project.name}.ivy.settings" file="${ivysettings.xml}" override='false' realm="Sonatype Nexus Repository Manager" />
+
+  </target>
+
+  <target name="ivy-resolve-common" depends="ivy-init">
+    <ivy:resolve settingsRef="${ant.project.name}.ivy.settings" conf="common" log="${ivyresolvelog}" />
+  </target>
+
+  <target name="ivy-retrieve-common" depends="ivy-resolve-common" description="Retrieve Ivy-managed artifacts for the compile configurations">
+    <ivy:retrieve settingsRef="${ant.project.name}.ivy.settings" pattern="${build.ivy.lib.dir}/${ivy.artifact.retrieve.pattern}" log="${ivyretrievelog}" />
+    <ivy:cachepath pathid="ivy-common.classpath" conf="common" />
+  </target>
+
+  <target name="ivy-resolve-test" depends="ivy-init">
+    <ivy:resolve settingsRef="${ant.project.name}.ivy.settings" conf="test" log="${ivyresolvelog}" />
+  </target>
+
+  <target name="ivy-retrieve-test" depends="ivy-resolve-test" description="Retrieve Ivy-managed artifacts for the test configurations">
+    <ivy:retrieve settingsRef="${ant.project.name}.ivy.settings" pattern="${build.ivy.lib.dir}/${ivy.artifact.retrieve.pattern}" log="${ivyretrievelog}" />
+    <ivy:cachepath pathid="ivy-common.classpath" conf="test" />
+  </target>
+  
+</project>

Added: hadoop/hbase/trunk/ivy.xml
URL: http://svn.apache.org/viewvc/hadoop/hbase/trunk/ivy.xml?rev=897587&view=auto
==============================================================================
--- hadoop/hbase/trunk/ivy.xml (added)
+++ hadoop/hbase/trunk/ivy.xml Sun Jan 10 02:13:13 2010
@@ -0,0 +1,118 @@
+<!--
+   Licensed to the Apache Software Foundation (ASF) under one or more
+   contributor license agreements.  See the NOTICE file distributed with
+   this work for additional information regarding copyright ownership.
+   The ASF licenses this file to You under the Apache License, Version 2.0
+   (the "License"); you may not use this file except in compliance with
+   the License.  You may obtain a copy of the License at
+
+       http://www.apache.org/licenses/LICENSE-2.0
+
+   Unless required by applicable law or agreed to in writing, software
+   distributed under the License is distributed on an "AS IS" BASIS,
+   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+   See the License for the specific language governing permissions and
+   limitations under the License.
+-->
+
+<ivy-module version="1.0">
+  <info organisation="org.apache.hadoop" module="${ant.project.name}" revision="${version}">
+    <license name="Apache 2.0"/>
+    <ivyauthor name="Apache Hadoop Team" url="http://hadoop.apache.org"/>
+    <description>
+        Hadoop Core
+    </description>
+  </info>
+  <configurations defaultconfmapping="default">
+    <!--these match the Maven configurations-->
+    <conf name="default" extends="master,runtime"/>
+    <conf name="master" description="contains the artifact but no dependencies"/>
+    <conf name="runtime" description="runtime but not the artifact"
+      extends="client,server,s3-server,kfs,mandatory,jetty,ftp"/>
+
+    <conf name="mandatory" description="contains the critical  dependencies"
+      extends="commons-logging,log4j"/>
+
+    <!--
+    These public configurations contain the core dependencies for running hadoop client or server.
+    The server is effectively a superset of the client.
+    -->
+    <conf name="client" description="client-side dependencies"
+      extends="mandatory,httpclient"/>
+    <conf name="server" description="server-side dependencies"
+      extends="client"/>
+    <conf name="s3-client" description="dependencies for working with S3/EC2 infrastructure"
+      extends="client"/>
+    <conf name="s3-server" description="dependencies for running on S3/EC2 infrastructure"
+      extends="s3-client,server"/>
+    <conf name="kfs" description="dependencies for KFS file system support"/>
+    <conf name="ftp" description="dependencies for workign with FTP filesytems" 
+              extends="mandatory"/>
+   <conf name="jetty" description="Jetty provides the in-VM HTTP daemon" extends="commons-logging"/>
+
+   <conf name="common" extends="runtime,mandatory,httpclient,ftp,jetty"
+          description="common artifacts"/>
+    <!--Testing pulls in everything-->
+   <conf name="test" extends="master" description="the classpath needed to run tests"/>
+
+    <!--Private configurations. -->
+
+    <conf name="javadoc" visibility="private" description="artiracts required while performing doc generation"
+      extends="common,mandatory,jetty,lucene"/>
+
+    <conf name="releaseaudit" visibility="private"
+  description="Artifacts required for releaseaudit target"/>
+     
+    <conf name="commons-logging" visibility="private"/>
+    <conf name="httpclient" visibility="private" extends="commons-logging"/>
+    <conf name="log4j" visibility="private"/>
+    <conf name="lucene" visibility="private"/>
+    <conf name="jdiff" visibility="private" extends="log4j,s3-client,jetty,server"/>
+    <conf name="checkstyle" visibility="private"/>
+
+  </configurations>
+
+  <publications>
+    <!--get the artifact from our module name-->
+    <artifact conf="master"/>
+  </publications>
+  <dependencies>
+   <!--  Common -->
+   <dependency org="org.apache.hadoop" name="hadoop-core" 
+               rev="${hadoop-core.version}" conf="common->default">
+      <exclude conf="test"/>  
+   </dependency>             
+   <dependency org="org.apache.hadoop" name="hadoop-hdfs" 
+               rev="${hadoop-hdfs.version}" conf="common->default">
+      <exclude conf="test"/>  
+   </dependency>             
+   <dependency org="org.apache.hadoop" name="hadoop-mapred" 
+               rev="${hadoop-mapred.version}" conf="common->default">
+      <exclude conf="test"/>  
+   </dependency>            
+   <dependency org="org.apache.lucene" name="lucene-core"
+               rev="${lucene.version}" conf="common->default" />               
+   <!--
+   TODO: Enter URL in ivysettings.xml that stores the artifacts of Zookeeper / thrift.     
+
+   <dependency org="org.apache.hadoop.zookeeper" name="zookeeper" 
+               rev="${zookeeper.version}" conf="common->default"/> 
+   <dependency org="thrift" name="libthrift" 
+               rev="${thrift.version}" conf="common->default" />
+   -->
+
+   <!--  Test  -->
+   <dependency org="org.apache.hadoop" name="hadoop-core-test" 
+               rev="${hadoop-core.version}" conf="test->default" transitive="false"/> 
+   <dependency org="org.apache.hadoop" name="hadoop-hdfs-test" 
+               rev="${hadoop-hdfs.version}" conf="test->default" transitive="false"/> 
+   <dependency org="org.apache.hadoop" name="hadoop-mapred-test" 
+               rev="${hadoop-mapred.version}" conf="test->default" transitive="false"/> 
+   <dependency org="org.apache.commons" name="commons-math" 
+               rev="${commons-math.version}" conf="test->default"/> 
+   <dependency org="log4j" name="log4j" 
+               rev="${log4j.version}" conf="test->master">
+      <exclude conf="jmx,mail,jms"/>  
+    </dependency>
+    </dependencies>
+</ivy-module>

Added: hadoop/hbase/trunk/ivy/ivy-2.1.0.jar
URL: http://svn.apache.org/viewvc/hadoop/hbase/trunk/ivy/ivy-2.1.0.jar?rev=897587&view=auto
==============================================================================
Binary file - no diff available.

Propchange: hadoop/hbase/trunk/ivy/ivy-2.1.0.jar
------------------------------------------------------------------------------
    svn:mime-type = application/octet-stream

Added: hadoop/hbase/trunk/ivy/ivysettings.xml
URL: http://svn.apache.org/viewvc/hadoop/hbase/trunk/ivy/ivysettings.xml?rev=897587&view=auto
==============================================================================
--- hadoop/hbase/trunk/ivy/ivysettings.xml (added)
+++ hadoop/hbase/trunk/ivy/ivysettings.xml Sun Jan 10 02:13:13 2010
@@ -0,0 +1,52 @@
+<ivysettings>
+ <!--
+   Licensed to the Apache Software Foundation (ASF) under one or more
+   contributor license agreements.  See the NOTICE file distributed with
+   this work for additional information regarding copyright ownership.
+   The ASF licenses this file to You under the Apache License, Version 2.0
+   (the "License"); you may not use this file except in compliance with
+   the License.  You may obtain a copy of the License at
+
+       http://www.apache.org/licenses/LICENSE-2.0
+
+   Unless required by applicable law or agreed to in writing, software
+   distributed under the License is distributed on an "AS IS" BASIS,
+   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+   See the License for the specific language governing permissions and
+   limitations under the License.
+-->
+
+  <property name="repo.maven.org" value="http://repo1.maven.org/maven2/" override="false"/>
+  <property name="snapshot.apache.org" value="https://repository.apache.org/content/repositories/snapshots/" override="false"/>
+  <property name="download.java.net" value="http://download.java.net/maven/2/" />
+  <property name="googlecode.com" value="http://google-maven-repository.googlecode.com/svn/repository" />
+  <property name="maven2.pattern" value="[organisation]/[module]/[revision]/[module]-[revision]"/>
+  <property name="maven2.pattern.ext" value="${maven2.pattern}.[ext]"/>
+  <property name="repository.codehaus.org" value="http://repository.codehaus.org/" />
+  
+  <property name="maven2.pattern" value="[organisation]/[module]/[revision]/[module]-[revision]"/>
+  <property name="maven2.pattern.ext" value="${maven2.pattern}.[ext]"/>
+  
+      <!-- pull in the local repository -->
+ <include url="${ivy.default.conf.dir}/ivyconf-local.xml"/> 
+ <settings defaultResolver="default"/>
+  <resolvers>
+    <!--ibiblio resolvers-->
+    <ibiblio name="maven2" root="${repo.maven.org}" m2compatible="true"/>
+    <ibiblio name="apache-snapshot" root="${snapshot.apache.org}" m2compatible="true"
+        checkmodified="true" changingPattern=".*SNAPSHOT"/>
+    <ibiblio name="java-net" root="${download.java.net}" m2compatible="true" />
+    <ibiblio name="google-code" root="${googlecode.com}" m2compatible="true" />
+    <ibiblio name="codehaus" root="${repository.codehaus.org}" m2compatible="true" />
+
+    <chain name="default" dual="true">
+      <resolver ref="maven2"/>
+      <resolver ref="java-net" />
+      <resolver ref="google-code" />
+      <resolver ref="codehaus" />
+      <resolver ref="apache-snapshot" />
+    </chain>
+  </resolvers>
+
+</ivysettings>
+

Added: hadoop/hbase/trunk/ivy/libraries.properties
URL: http://svn.apache.org/viewvc/hadoop/hbase/trunk/ivy/libraries.properties?rev=897587&view=auto
==============================================================================
--- hadoop/hbase/trunk/ivy/libraries.properties (added)
+++ hadoop/hbase/trunk/ivy/libraries.properties Sun Jan 10 02:13:13 2010
@@ -0,0 +1,47 @@
+#   Licensed under the Apache License, Version 2.0 (the "License");
+#   you may not use this file except in compliance with the License.
+#   You may obtain a copy of the License at
+#
+#       http://www.apache.org/licenses/LICENSE-2.0
+#
+#   Unless required by applicable law or agreed to in writing, software
+#   distributed under the License is distributed on an "AS IS" BASIS,
+#   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+#   See the License for the specific language governing permissions and
+#   limitations under the License.
+
+#This properties file lists the versions of the various artifacts used by hadoop and components.
+#It drives ivy and the generation of a maven POM
+
+#These are the versions of our dependencies (in alphabetical order)
+apacheant.version=1.7.1
+ant-task.version=2.0.10
+
+ivy.version=2.1.0
+
+hadoop-core.version=0.21.0-SNAPSHOT
+hadoop-hdfs.version=0.21.0-SNAPSHOT
+hadoop-mapred.version=0.21.0-SNAPSHOT
+
+zookeeper.version=3.2.2
+thrift.version=r771587
+
+lucene.version=2.2.0
+
+jsr311.version=1.1.1
+
+commons-cli.version=1.2
+
+commons-math.version=2.0
+log4j.version=1.2.15
+
+
+jersey.version=1.1.4.1
+ 
+protobuf.version=2.1.0
+
+
+jruby.version=1.3.1
+
+
+

Modified: hadoop/hbase/trunk/src/contrib/build-contrib.xml
URL: http://svn.apache.org/viewvc/hadoop/hbase/trunk/src/contrib/build-contrib.xml?rev=897587&r1=897586&r2=897587&view=diff
==============================================================================
--- hadoop/hbase/trunk/src/contrib/build-contrib.xml (original)
+++ hadoop/hbase/trunk/src/contrib/build-contrib.xml Sun Jan 10 02:13:13 2010
@@ -23,18 +23,16 @@
 
   <property name="version" value="0.20.0"/>
   <property name="name" value="${ant.project.name}"/>
-  <property name="root" value="${basedir}"/>
 
   <!-- Load all the default properties, and any the user wants    -->
   <!-- to contribute (without having to type -D or edit this file -->
   <property file="${user.home}/${name}.build.properties" />
-  <property file="${root}/build.properties" />
+  <property file="${basedir}/build.properties" />
 
-  <property name="hbase.root" location="${root}/../../../"/>
-
-  <property name="src.dir"  location="${root}/src/java"/>
-  <property name="src.test" location="${root}/src/test"/>
-  <property name="src.examples" location="${root}/src/examples"/>
+  <property name="src.dir"  location="${basedir}/src/java"/>
+  <property name="src.test" location="${basedir}/src/test"/>
+  <property name="src.examples" location="${basedir}/src/examples"/>
+  <property name="ivy.dir" location="${hbase.root}/ivy" />
 
   <available file="${src.examples}" type="dir" property="examples.available"/>
   <available file="${src.test}" type="dir" property="test.available"/>
@@ -43,18 +41,19 @@
   <property name="test.junit.output.format" value="plain"/>
   <property name="test.output" value="no"/>
   <property name="test.timeout" value="900000"/>
+
   <property name="build.dir" location="${hbase.root}/build/contrib/${name}"/>
   <property name="dist.dir" location="${build.dir}/${name}-${version}"/>
   <property name="build.classes" location="${build.dir}/classes"/>
   <property name="build.test" location="${build.dir}/test"/>
   <property name="build.examples" location="${build.dir}/examples"/>
-  <property name="hbase.log.dir" location="${build.dir}/test/logs"/>
+  <property name="hbase.log.dir" location="${build.test}/logs"/>
   <!-- all jars together -->
   <property name="javac.deprecation" value="off"/>
   <property name="javac.debug" value="on"/>
 
   <property name="javadoc.link"
-    value="http://java.sun.com/j2se/1.4/docs/api/"/>
+    value="http://java.sun.com/j2se/1.6/docs/api/"/>
 
   <property name="build.encoding" value="ISO-8859-1"/>
 
@@ -71,27 +70,35 @@
         <isset property="clover.present"/>
     </and>
   </condition>
-
-  <fileset id="lib.jars" dir="${root}" includes="lib/*.jar"/>
+  <import file="../../ivy-targets.xml" />
+  
 
   <!-- the normal classpath -->
-  <path id="classpath">
-    <pathelement location="${build.classes}"/>
-    <fileset refid="lib.jars"/>
-    <pathelement location="${hbase.root}/build/classes"/>
+  <path id="contrib.classpath">
+  	<pathelement location="${build.classes}"/>
+  
+    <fileset dir="${common.ivy.lib.dir}">
+        <include name="*jar" />
+    </fileset>
+    <pathelement location="${hbase.root}/build/classes" />
     <fileset dir="${hbase.root}/lib">
-      <include name="**/*.jar" />
+      <include name="libthrift-*.jar" />   
+      <include name="zookeeper*.jar" />   
     </fileset>
   </path>
 
   <!-- the unit test classpath -->
-  <path id="test.classpath">
-    <path refid="classpath"/>
-    <pathelement location="${build.test}" />
+  <path id="test.contrib.classpath">
+  	<path refid="contrib.classpath"/>
+    <fileset dir="${test.ivy.lib.dir}">
+      <include name="*jar" />
+    </fileset>
+    <pathelement location="${build.test}" />    
     <pathelement location="${hbase.root}/build/test"/>
     <pathelement location="${hbase.root}/build"/>
     <pathelement location="${hbase.root}/src/test"/>
-    <pathelement location="${conf.dir}"/>
+    <pathelement location="${conf.dir}" />
+
     <pathelement path="${clover.jar}"/>
   </path>
 
@@ -117,7 +124,7 @@
   <!-- ====================================================== -->
   <!-- Compile a hbase contrib's files                       -->
   <!-- ====================================================== -->
-  <target name="compile" depends="clover,init" unless="skip.contrib">
+  <target name="compile" depends="clover,init,ivy-retrieve-common" unless="skip.contrib">
     <echo message="contrib: ${name}"/>
     <javac
      encoding="${build.encoding}"
@@ -150,7 +157,7 @@
   <!-- ================================================================== -->
   <!-- Compile test code                                                  -->
   <!-- ================================================================== -->
-  <target name="compile-test" depends="compile-examples" if="test.available">
+  <target name="compile-test" depends="compile-examples,ivy-retrieve-test" if="test.available">
     <echo message="contrib: ${name}"/>
     <javac
      encoding="${build.encoding}"

Modified: hadoop/hbase/trunk/src/contrib/stargate/build.xml
URL: http://svn.apache.org/viewvc/hadoop/hbase/trunk/src/contrib/stargate/build.xml?rev=897587&r1=897586&r2=897587&view=diff
==============================================================================
--- hadoop/hbase/trunk/src/contrib/stargate/build.xml (original)
+++ hadoop/hbase/trunk/src/contrib/stargate/build.xml Sun Jan 10 02:13:13 2010
@@ -1,6 +1,6 @@
 <project name="stargate" default="package" basedir=".">
-  <import file="../build-contrib.xml"/>
-
+  <property name="hbase.root" location="../../.." />
+  
   <import file="../build-contrib.xml"/>
   
   <property name="build.war.classes" location="${build.dir}/warClasses"/>
@@ -14,6 +14,14 @@
   <property name="javac.debug" value="on"/>
   <property name="javac.source" value="1.6"/>
   
+  <path id="classpath">
+    <path refid="contrib.classpath"/>
+  </path>
+
+  <path id="test.classpath">
+    <path refid="test.contrib.classpath"/>
+  </path>
+  
   <target name="init-contrib">
     <tstamp/>
     <mkdir dir="${build.war.classes}"/>
@@ -25,7 +33,7 @@
     </javadoc>
   </target>
   
-  <target name="compile" depends="compile-jar, compile-war">
+  <target name="compile" depends="ivy-retrieve-common, compile-jar, compile-war">
     <echo message="contrib: ${name}"/>
   </target>
 
@@ -42,7 +50,7 @@
     </javac>
   </target>
   
-  <target name="compile-test" depends="compile-jar,compile-war">
+  <target name="compile-test" depends="ivy-retrieve-test, compile-jar,compile-war">
     <javac srcdir="${src.test}" includes="**/*.java" destdir="${build.test}" debug="${javac.debug}" source="1.6">
       <classpath refid="test.classpath"/>
     </javac>
@@ -56,11 +64,11 @@
       <sysproperty key="test.log.dir" value="${hadoop.log.dir}"/>
       <classpath refid="test.classpath"/>
       <formatter type="${test.junit.output.format}"/>
-      <batchtest todir="${build.test}" unless="testcase">
-        <fileset dir="${src.test}" includes="**/Test*.java"/>
+      <batchtest todir="${build.test}" unless="testcase" >
+        <fileset dir="${src.test}" includes="**/Test*.java" />
       </batchtest>
-      <batchtest todir="${build.test}" if="testcase">
-        <fileset dir="${src.test}" includes="**/${testcase}.java"/>
+      <batchtest todir="${build.test}" if="testcase" >
+        <fileset dir="${src.test}" includes="**/Test*.java" />
       </batchtest>
     </junit>
     <fail if="tests.failed">

Added: hadoop/hbase/trunk/src/contrib/stargate/ivy.xml
URL: http://svn.apache.org/viewvc/hadoop/hbase/trunk/src/contrib/stargate/ivy.xml?rev=897587&view=auto
==============================================================================
--- hadoop/hbase/trunk/src/contrib/stargate/ivy.xml (added)
+++ hadoop/hbase/trunk/src/contrib/stargate/ivy.xml Sun Jan 10 02:13:13 2010
@@ -0,0 +1,128 @@
+<!--
+   Licensed to the Apache Software Foundation (ASF) under one or more
+   contributor license agreements.  See the NOTICE file distributed with
+   this work for additional information regarding copyright ownership.
+   The ASF licenses this file to You under the Apache License, Version 2.0
+   (the "License"); you may not use this file except in compliance with
+   the License.  You may obtain a copy of the License at
+
+       http://www.apache.org/licenses/LICENSE-2.0
+
+   Unless required by applicable law or agreed to in writing, software
+   distributed under the License is distributed on an "AS IS" BASIS,
+   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+   See the License for the specific language governing permissions and
+   limitations under the License.
+-->
+
+<ivy-module version="1.0">
+  <info organisation="org.apache.hadoop" module="${ant.project.name}" revision="${version}">
+    <license name="Apache 2.0"/>
+    <ivyauthor name="Apache Hadoop Team" url="http://hadoop.apache.org"/>
+    <description>
+        Hadoop Core
+    </description>
+  </info>
+  <configurations defaultconfmapping="default">
+    <!--these match the Maven configurations-->
+    <conf name="default" extends="master,runtime"/>
+    <conf name="master" description="contains the artifact but no dependencies"/>
+    <conf name="runtime" description="runtime but not the artifact"
+      extends="client,server,s3-server,kfs,mandatory,jetty,ftp"/>
+
+    <conf name="mandatory" description="contains the critical  dependencies"
+      extends="commons-logging,log4j"/>
+
+    <!--
+    These public configurations contain the core dependencies for running hadoop client or server.
+    The server is effectively a superset of the client.
+    -->
+    <conf name="client" description="client-side dependencies"
+      extends="mandatory,httpclient"/>
+    <conf name="server" description="server-side dependencies"
+      extends="client"/>
+    <conf name="s3-client" description="dependencies for working with S3/EC2 infrastructure"
+      extends="client"/>
+    <conf name="s3-server" description="dependencies for running on S3/EC2 infrastructure"
+      extends="s3-client,server"/>
+    <conf name="kfs" description="dependencies for KFS file system support"/>
+    <conf name="ftp" description="dependencies for workign with FTP filesytems" 
+              extends="mandatory"/>
+   <conf name="jetty" description="Jetty provides the in-VM HTTP daemon" extends="commons-logging"/>
+
+   <conf name="common" extends="runtime,mandatory,httpclient,ftp,jetty"
+          description="common artifacts"/>
+    <!--Testing pulls in everything-->
+   <conf name="test" extends="master" description="the classpath needed to run tests"/>
+
+    <!--Private configurations. -->
+
+    <conf name="javadoc" visibility="private" description="artifacts required while performing doc generation"
+      extends="common,mandatory,jetty,lucene"/>
+
+    <conf name="releaseaudit" visibility="private"
+  description="Artifacts required for releaseaudit target"/>
+     
+    <conf name="commons-logging" visibility="private"/>
+    <conf name="httpclient" visibility="private" extends="commons-logging"/>
+    <conf name="log4j" visibility="private"/>
+    <conf name="lucene" visibility="private"/>
+    <conf name="jdiff" visibility="private" extends="log4j,s3-client,jetty,server"/>
+    <conf name="checkstyle" visibility="private"/>
+
+  </configurations>
+
+  <publications>
+    <!--get the artifact from our module name-->
+    <artifact conf="master"/>
+  </publications>
+  <dependencies>
+   <!--  Common -->
+   <dependency org="javax.ws.rs" name="jsr311-api" 
+               rev="${jsr311.version}" conf="common->default"/>
+   <dependency org="commons-cli"  name="commons-cli"
+      rev="${commons-cli.version}" conf="client->default"/>
+   <dependency org="com.sun.jersey" name="jersey-server" 
+      rev="${jersey.version}" conf="common->default" />
+   <dependency org="com.sun.jersey" name="jersey-json" 
+      rev="${jersey.version}" conf="common->default" />
+      
+   <dependency org="org.apache.hadoop" name="hadoop-core" 
+               rev="${hadoop-core.version}" conf="common->default" >
+      <exclude conf="test"/>  
+   </dependency>        
+   <dependency org="org.apache.hadoop" name="hadoop-hdfs" 
+               rev="${hadoop-hdfs.version}" conf="common->default">
+      <exclude conf="test"/>  
+   </dependency>             
+   <dependency org="org.apache.hadoop" name="hadoop-mapred" 
+               rev="${hadoop-mapred.version}" conf="common->default">
+      <exclude conf="test"/>  
+   </dependency>                       
+               
+   <dependency org="com.google.protobuf" name="protobuf-java" 
+               rev="${protobuf.version}" conf="common->default"/> 
+    <dependency org="org.jruby" name="jruby-complete"
+              rev="${jruby.version}" conf="common->default" />                
+   <!--
+   TODO: Enter URL in ivysettings.xml that stores the artifacts of zookeeper     
+
+   <dependency org="org.apache.hadoop.zookeeper" name="zookeeper" 
+               rev="${zookeeper.version}" conf="common->default"/> 
+   -->
+
+   <!--  Test  -->
+   <dependency org="org.apache.hadoop" name="hadoop-core-test" 
+               rev="${hadoop-core.version}" conf="test->default" transitive="false" /> 
+   <dependency org="org.apache.hadoop" name="hadoop-hdfs-test" 
+               rev="${hadoop-hdfs.version}" conf="test->default" transitive="false" /> 
+   <dependency org="org.apache.hadoop" name="hadoop-mapred-test" 
+               rev="${hadoop-mapred.version}" conf="test->default" transitive="false" /> 
+               
+   <dependency org="log4j" name="log4j" 
+               rev="${log4j.version}" conf="test->master">
+      <exclude conf="jmx,mail,jms"/>  
+    </dependency>                
+               
+    </dependencies>
+</ivy-module>

Modified: hadoop/hbase/trunk/src/contrib/transactional/build.xml
URL: http://svn.apache.org/viewvc/hadoop/hbase/trunk/src/contrib/transactional/build.xml?rev=897587&r1=897586&r2=897587&view=diff
==============================================================================
--- hadoop/hbase/trunk/src/contrib/transactional/build.xml (original)
+++ hadoop/hbase/trunk/src/contrib/transactional/build.xml Sun Jan 10 02:13:13 2010
@@ -21,8 +21,23 @@
 Before you can run these subtargets directly, you need 
 to call at top-level: ant deploy-contrib compile-core-test
 -->
-<project name="transactional" default="jar">
+<project name="transactional" default="jar" basedir=".">
+  <property name="hbase.root" location="../../.." />
+  
   <import file="../build-contrib.xml"/>
+
+  <path id="classpath">
+  <path refid="contrib.classpath"/>
+  </path> 
+
+  <path id="test.classpath">
+    <path refid="test.contrib.classpath"/>
+    <fileset dir="${hbase.root}/lib">
+      <include name="zookeeper*.jar" />	
+    </fileset>	
+  </path>
+  
+  
   <!-- ====================================================== -->
   <!-- Override standard contrib package target to include
        IndexedTable.rb in the same directory as the jar       -->
@@ -33,8 +48,8 @@
       <fileset dir="${build.dir}">
         <include name="hbase-${version}-${name}.jar" />
       </fileset>
-      <fileset dir="${root}/bin">
-      	<include name="TableIndexed.rb" />
+      <fileset dir="${basedir}/bin">
+        <include name="TableIndexed.rb" />
       </fileset>
     </copy>
   </target>

Added: hadoop/hbase/trunk/src/contrib/transactional/ivy.xml
URL: http://svn.apache.org/viewvc/hadoop/hbase/trunk/src/contrib/transactional/ivy.xml?rev=897587&view=auto
==============================================================================
--- hadoop/hbase/trunk/src/contrib/transactional/ivy.xml (added)
+++ hadoop/hbase/trunk/src/contrib/transactional/ivy.xml Sun Jan 10 02:13:13 2010
@@ -0,0 +1,107 @@
+<!--
+   Licensed to the Apache Software Foundation (ASF) under one or more
+   contributor license agreements.  See the NOTICE file distributed with
+   this work for additional information regarding copyright ownership.
+   The ASF licenses this file to You under the Apache License, Version 2.0
+   (the "License"); you may not use this file except in compliance with
+   the License.  You may obtain a copy of the License at
+
+       http://www.apache.org/licenses/LICENSE-2.0
+
+   Unless required by applicable law or agreed to in writing, software
+   distributed under the License is distributed on an "AS IS" BASIS,
+   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+   See the License for the specific language governing permissions and
+   limitations under the License.
+-->
+
+<ivy-module version="1.0">
+  <info organisation="org.apache.hadoop" module="${ant.project.name}" revision="${version}">
+    <license name="Apache 2.0"/>
+    <ivyauthor name="Apache Hadoop Team" url="http://hadoop.apache.org"/>
+    <description>
+        Hadoop Core
+    </description>
+  </info>
+  <configurations defaultconfmapping="default">
+    <!--these match the Maven configurations-->
+    <conf name="default" extends="master,runtime"/>
+    <conf name="master" description="contains the artifact but no dependencies"/>
+    <conf name="runtime" description="runtime but not the artifact"
+      extends="client,server,s3-server,kfs,mandatory,jetty,ftp"/>
+
+    <conf name="mandatory" description="contains the critical  dependencies"
+      extends="commons-logging,log4j"/>
+
+    <!--
+    These public configurations contain the core dependencies for running hadoop client or server.
+    The server is effectively a superset of the client.
+    -->
+    <conf name="client" description="client-side dependencies"
+      extends="mandatory,httpclient"/>
+    <conf name="server" description="server-side dependencies"
+      extends="client"/>
+    <conf name="s3-client" description="dependencies for working with S3/EC2 infrastructure"
+      extends="client"/>
+    <conf name="s3-server" description="dependencies for running on S3/EC2 infrastructure"
+      extends="s3-client,server"/>
+    <conf name="kfs" description="dependencies for KFS file system support"/>
+    <conf name="ftp" description="dependencies for workign with FTP filesytems" 
+              extends="mandatory"/>
+   <conf name="jetty" description="Jetty provides the in-VM HTTP daemon" extends="commons-logging"/>
+
+   <conf name="common" extends="runtime,mandatory,httpclient,ftp,jetty"
+          description="common artifacts"/>
+    <!--Testing pulls in everything-->
+   <conf name="test" extends="master,common" description="the classpath needed to run tests"/>
+
+    <!--Private configurations. -->
+
+    <conf name="javadoc" visibility="private" description="artifacts required while performing doc generation"
+      extends="common,mandatory,jetty,lucene"/>
+
+    <conf name="releaseaudit" visibility="private"
+  description="Artifacts required for releaseaudit target"/>
+     
+    <conf name="commons-logging" visibility="private"/>
+    <conf name="httpclient" visibility="private" extends="commons-logging"/>
+    <conf name="log4j" visibility="private"/>
+    <conf name="lucene" visibility="private"/>
+    <conf name="jdiff" visibility="private" extends="log4j,s3-client,jetty,server"/>
+    <conf name="checkstyle" visibility="private"/>
+
+  </configurations>
+
+  <publications>
+    <!--get the artifact from our module name-->
+    <artifact conf="master"/>
+  </publications>
+  <dependencies>
+   <!--  Common -->
+    <dependency org="org.apache.hadoop" name="hadoop-core" 
+               rev="${hadoop-core.version}" conf="common->default"  >
+      <exclude conf="test"/>  
+    </dependency>             
+    <dependency org="org.apache.hadoop" name="hadoop-hdfs" 
+               rev="${hadoop-hdfs.version}" conf="common->default" >
+      <exclude conf="test"/>  
+    </dependency>
+    <dependency org="org.jruby" name="jruby-complete"
+              rev="${jruby.version}" conf="common->default" />
+    
+   <!--  Test  -->
+   <!-- 
+   Test Zookeeper cluster
+    <dependency org="org.apache.hadoop" name="hadoop-mapred-test" 
+               rev="${hadoop-mapred.version}" conf="test->default"/> 
+   -->                
+    <dependency org="org.apache.hadoop" name="hadoop-core-test" 
+               rev="${hadoop-core.version}" conf="test->default"  transitive="false" />
+    <dependency org="org.apache.hadoop" name="hadoop-hdfs-test" 
+               rev="${hadoop-hdfs.version}" conf="test->default" transitive="false"/>
+    <dependency org="log4j" name="log4j" 
+               rev="${log4j.version}" conf="test->master">
+      <exclude conf="jmx,mail,jms"/>  
+    </dependency>                
+  </dependencies>
+</ivy-module>