HBASE-2254, HBASE-2260 Improvements to the Maven POMs AND remove ivy and ant

git-svn-id: https://svn.apache.org/repos/asf/hadoop/hbase/trunk@915959 13f79535-47bb-0310-9956-ffa450edef68
This commit is contained in:
Michael Stack 2010-02-24 20:17:17 +00:00
parent 24c9e7e061
commit a5a5d26ac3
30 changed files with 273 additions and 2131 deletions

View File

@ -13,6 +13,7 @@ Release 0.21.0 - Unreleased
HBASE-2219 stop using code mapping for method names in the RPC
HBASE-1728 Column family scoping and cluster identification
HBASE-2099 Move build to Maven (Paul Smith via Stack)
HBASE-2260 Remove all traces of Ant and Ivy (Lars Francke via Stack)
BUG FIXES
HBASE-1791 Timeout in IndexRecordWriter (Bradford Stephens via Andrew
@ -380,6 +381,7 @@ Release 0.21.0 - Unreleased
emit it. (Ferdy via Stack)
HBASE-2241 Change balancer sloppyness from 0.1 to 0.3
HBASE-2250 typo in the maven pom
HBASE-2254 Improvements to the Maven POMs (Lars Francke via Stack)
NEW FEATURES
HBASE-1961 HBase EC2 scripts

566
build.xml
View File

@ -1,566 +0,0 @@
<?xml version="1.0"?>
<!--
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.
-->
<project name="hbase" default="jar">
<property name="version" value="0.21.0-dev"/>
<property name="Name" value="HBase"/>
<property name="final.name" value="hbase-${version}"/>
<property name="year" value="2009"/>
<!-- 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="${basedir}/build.properties" />
<property name="src.dir" location="${basedir}/src/java"/>
<property name="src.test" location="${basedir}/src/test"/>
<property name="src.testdata" location="${basedir}/src/testdata"/>
<property name="src.examples" location="${basedir}/src/examples"/>
<property name="src.webapps" location="${basedir}/src/webapps"/>
<property name="lib.dir" value="${basedir}/lib"/>
<property name="conf.dir" value="${basedir}/conf"/>
<property name="docs.dir" value="${basedir}/docs"/>
<property name="docs.src" value="${basedir}/src/docs"/>
<property name="contrib.dir" value="${basedir}/src/contrib"/>
<property name="test.output" value="no"/>
<property name="test.timeout" value="600000"/>
<property name="build.dir" location="${basedir}/build"/>
<property name="build.bin" location="${build.dir}/bin"/>
<property name="build.conf" location="${build.dir}/conf"/>
<property name="build.webapps" location="${build.dir}/webapps"/>
<property name="build.lib" location="${build.dir}/lib"/>
<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="build.docs" value="${build.dir}/docs"/>
<property name="build.docinput" value="${build.dir}/docinput" />
<property name="build.javadoc" value="${build.docs}/api"/>
<property name="build.encoding" value="ISO-8859-1"/>
<property name="build.src" value="${build.dir}/src"/>
<property name="generated.webapps.src" value="${build.src}"/>
<property name="test.build.dir" value="${build.dir}/test"/>
<property name="test.log.dir" value="${test.build.dir}/logs"/>
<property name="test.junit.output.format" value="plain"/>
<property name="dist.dir" value="${build.dir}/${final.name}"/>
<property name="javac.deprecation" value="off"/>
<property name="javac.debug" value="on"/>
<property name="javac.version" value="1.6"/>
<property name="clover.db.dir" location="${build.dir}/test/clover/db"/>
<property name="clover.report.dir" location="${build.dir}/test/clover/reports"/>
<property name="javadoc.link.java"
value="http://java.sun.com/javase/6/docs/api/"/>
<property name="javadoc.packages" value="org.apache.hadoop.hbase.*"/>
<property name="jarfile" value="${build.dir}/${final.name}.jar" />
<property name="clover.jar" location="${clover.home}/lib/clover.jar"/>
<available property="clover.present" file="${clover.jar}"/>
<!-- check if clover reports should be generated -->
<condition property="clover.enabled">
<and>
<isset property="run.clover"/>
<isset property="clover.present"/>
</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" />
<import file="${basedir}/findbugs-targets.xml" />
<!--We need to have the hadoop jars ride in front of the hbase classes or we
get the below exceptions:
[junit] java.io.FileNotFoundException: file:/Users/stack/Documents/checkouts/hbase/trunk/build/webapps/dfs
When we move off 0.16.0 hadoop, fix HttpStatusServer
-->
<path id="classpath">
<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}"/>
<mkdir dir="${build.test}"/>
<mkdir dir="${build.examples}"/>
<!--Copy webapps over to build dir. Exclude jsp and generated-src java
classes -->
<mkdir dir="${build.webapps}"/>
<copy todir="${build.webapps}">
<fileset dir="${src.webapps}">
<exclude name="**/*.jsp" />
<exclude name="**/.*" />
<exclude name="**/*~" />
</fileset>
</copy>
<!--Copy bin, lib, and conf. too-->
<mkdir dir="${build.lib}"/>
<copy todir="${build.lib}">
<fileset dir="${lib.dir}" >
<include name="zookeeper*" />
<include name="libthrift*"/>
</fileset>
</copy>
<mkdir dir="${build.conf}"/>
<copy todir="${build.conf}">
<fileset dir="${basedir}/conf" />
</copy>
<mkdir dir="${build.bin}"/>
<copy todir="${build.bin}">
<fileset dir="${basedir}/bin" />
</copy>
<chmod perm="ugo+x" type="file">
<fileset dir="${build.bin}" />
</chmod>
<!--Copy contrib. templates if any-->
<copy todir="${contrib.dir}" verbose="true">
<fileset dir="${contrib.dir}" includes="**/*.template"/>
<mapper type="glob" from="*.template" to="*"/>
</copy>
<exec executable="sh">
<arg line="src/saveVersion.sh ${version}"/>
</exec>
</target>
<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}"
srcdir="${src.dir};${build.src}"
includes="**/*.java"
destdir="${build.classes}"
debug="${javac.debug}"
target="${javac.version}"
source="${javac.version}"
deprecation="${javac.deprecation}">
<classpath refid="classpath"/>
</javac>
</target>
<target name="compile-contrib" depends="compile-core" description="Compile contribs">
<subant target="compile">
<property name="version" value="${version}"/>
<fileset file="${contrib.dir}/build.xml"/>
</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-->
<copy todir="${build.classes}">
<fileset dir="${src.dir}">
<include name="**/*.properties" />
</fileset>
</copy>
<jar jarfile="${jarfile}" basedir="${build.classes}" >
<fileset dir="${conf.dir}" >
<include name="hbase-default.xml" />
</fileset>
<zipfileset dir="conf" prefix="conf" includes="hbase-default.xml" />
<zipfileset dir="${build.webapps}" prefix="webapps"/>
<manifest>
<attribute name="Main-Class" value="org/apache/hadoop/hbase/mapreduce/Driver" />
</manifest>
</jar>
</target>
<!--Conditionally generate the jsp java pages.
We do it once per ant invocation. See hbase-593.
-->
<target name="jspc" depends="init" unless="jspc.not.required">
<path id="jspc.classpath">
<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" >
<classpath refid="jspc.classpath"/>
</taskdef>
<mkdir dir="${build.webapps}/master/WEB-INF"/>
<jspcompiler
uriroot="${src.webapps}/master"
outputdir="${generated.webapps.src}"
package="org.apache.hadoop.hbase.generated.master"
webxml="${build.webapps}/master/WEB-INF/web.xml">
</jspcompiler>
<mkdir dir="${build.webapps}/regionserver/WEB-INF"/>
<jspcompiler
uriroot="${src.webapps}/regionserver"
outputdir="${generated.webapps.src}"
package="org.apache.hadoop.hbase.generated.regionserver"
webxml="${build.webapps}/regionserver/WEB-INF/web.xml">
</jspcompiler>
<property name="jspc.not.required" value="true" />
<echo message="Setting jspc.notRequired property. jsp pages generated once per ant session only" />
</target>
<target name="clover" depends="clover.setup, clover.info"
description="Instrument the Unit tests using Clover. To use, specify -Dclover.home=&lt;base of clover installation&gt; -Drun.clover=true on the command line."/>
<target name="clover.setup" if="clover.enabled">
<taskdef resource="cloverlib.xml" classpath="${clover.jar}"/>
<mkdir dir="${clover.db.dir}"/>
<clover-setup initString="${clover.db.dir}/hbase_coverage.db">
<fileset dir="src" includes="java/**/*"/>
</clover-setup>
</target>
<target name="clover.info" unless="clover.present">
<echo>
Clover not found. Code coverage reports disabled.
</echo>
</target>
<target name="clover.check">
<fail unless="clover.present">
##################################################################
Clover not found.
Please specify -Dclover.home=&lt;base of clover installation&gt;
on the command line.
##################################################################
</fail>
</target>
<target name="generate-clover-reports" depends="clover.check, clover">
<mkdir dir="${clover.report.dir}"/>
<clover-report>
<current outfile="${clover.report.dir}" title="${final.name}">
<format type="html"/>
</current>
</clover-report>
<clover-report>
<current outfile="${clover.report.dir}/clover.xml" title="${final.name}">
<format type="xml"/>
</current>
</clover-report>
</target>
<!-- ================================================================== -->
<!-- Package -->
<!-- ================================================================== -->
<target name="package" depends="jar,javadoc"
description="Build distribution; must define -Dforrest.home so can generate doc">
<echo message="Be sure to run 'docs' target before this one else package will be missing site documentation" />
<mkdir dir="${dist.dir}"/>
<copy todir="${dist.dir}" includeEmptyDirs="false" flatten="true">
<fileset dir="${build.dir}">
<include name="${final.name}.jar" />
<include name="${final.name}-test.jar" />
</fileset>
</copy>
<mkdir dir="${dist.dir}/contrib"/>
<subant target="package">
<!--Pass down the version in case its needed again and the target
distribution directory so contribs know where to install to.-->
<property name="version" value="${version}"/>
<property name="dist.dir" value="${dist.dir}"/>
<fileset file="${contrib.dir}/build.xml"/>
</subant>
<mkdir dir="${dist.dir}/webapps"/>
<copy todir="${dist.dir}/webapps">
<fileset dir="${build.webapps}" />
</copy>
<mkdir dir="${dist.dir}/lib"/>
<copy todir="${dist.dir}/lib">
<fileset dir="${build.lib}" />
<fileset dir="${common.ivy.lib.dir}" />
<fileset dir="${build.dir}/contrib/stargate/ivy/lib/common" />
<fileset dir="${build.dir}/contrib/transactional/ivy/lib/common" />
</copy>
<mkdir dir="${dist.dir}/conf" />
<copy todir="${dist.dir}/conf">
<fileset dir="${build.conf}" />
</copy>
<mkdir dir="${dist.dir}/bin" />
<copy todir="${dist.dir}/bin">
<fileset dir="${build.bin}" />
</copy>
<chmod perm="ugo+x" type="file">
<fileset dir="${dist.dir}/bin" />
</chmod>
<mkdir dir="${dist.dir}/docs" />
<copy todir="${dist.dir}/docs">
<fileset dir="${build.docs}"/>
</copy>
<copy todir="${dist.dir}">
<fileset dir=".">
<include name="*.txt" />
<include name="build.xml" />
</fileset>
</copy>
<mkdir dir="${dist.dir}/src" />
<copy todir="${dist.dir}/src" includeEmptyDirs="true">
<fileset dir="src" excludes="**/*.template **/docs/build/**/*"/>
</copy>
<copy todir="${dist.dir}/" file="build.xml"/>
<chmod perm="ugo+x" type="file" parallel="false">
<fileset dir="${dist.dir}/bin"/>
<fileset dir="${dist.dir}/src/contrib/">
<include name="*/bin/*" />
</fileset>
</chmod>
</target>
<!-- ================================================================== -->
<!-- Make release tarball -->
<!-- ================================================================== -->
<macrodef name="macro_tar" description="Worker Macro for tar">
<attribute name="param.destfile"/>
<element name="param.listofitems"/>
<sequential>
<tar compression="gzip" longfile="gnu"
destfile="@{param.destfile}">
<param.listofitems/>
</tar>
</sequential>
</macrodef>
<target name="tar" depends="package" description="Make release tarball">
<macro_tar param.destfile="${build.dir}/${final.name}.tar.gz">
<param.listofitems>
<tarfileset dir="${build.dir}" mode="664">
<exclude name="${final.name}/bin/*" />
<include name="${final.name}/**" />
</tarfileset>
<tarfileset dir="${build.dir}" mode="755">
<include name="${final.name}/bin/*" />
</tarfileset>
</param.listofitems>
</macro_tar>
</target>
<target name="binary" depends="package" description="Make tarball without source and documentation">
<macro_tar param.destfile="${build.dir}/${final.name}-bin.tar.gz">
<param.listofitems>
<tarfileset dir="${build.dir}" mode="664">
<exclude name="${final.name}/bin/*" />
<exclude name="${final.name}/contrib/*/bin/*" />
<exclude name="${final.name}/src/**" />
<exclude name="${final.name}/docs/**" />
<include name="${final.name}/**" />
</tarfileset>
<tarfileset dir="${build.dir}" mode="755">
<include name="${final.name}/bin/*" />
<exclude name="${final.name}/contrib/*/bin/*" />
</tarfileset>
</param.listofitems>
</macro_tar>
</target>
<!-- ================================================================== -->
<!-- Doc -->
<!-- ================================================================== -->
<target name="docs" depends="forrest.check"
description="Generate forrest-based documentation. To use, specify -Dforrest.home=&lt;base of Apache Forrest installation&gt; on the command line." if="forrest.home">
<mkdir dir="${build.docinput}" />
<copy todir="${build.docinput}" >
<fileset dir="${docs.src}" />
</copy>
<property name="conf.html.output" value="${build.docinput}/src/documentation/content/xdocs/hbase-conf.xml" />
<xslt in="${basedir}/conf/hbase-default.xml" out="${conf.html.output}"
style="${basedir}/conf/tohtml.xsl" >
<xmlcatalog>
<dtd
publicId="-//APACHE//DTD Documentation V2.0//EN"
location="http://forrest.apache.org/dtd/document-v20.dtd"/>
</xmlcatalog>
</xslt>
<exec dir="${build.docinput}" executable="${forrest.home}/bin/forrest" failonerror="true" />
<copy todir="${build.docs}">
<fileset dir="${build.docinput}/build/site/" />
</copy>
<!--Copy to $HBASE_HOME/docs ... need to check it in to persist it.-->
<copy todir="${docs.dir}">
<fileset dir="${build.docs}" />
</copy>
</target>
<target name="forrest.check" unless="forrest.home">
<fail message="'forrest.home' is not defined. Please pass -Dforrest.home=&lt;base of Apache Forrest installation&gt; to Ant on the command-line." />
</target>
<!-- Javadoc -->
<target name="javadoc" description="Generate javadoc">
<mkdir dir="${build.javadoc}"/>
<javadoc
overview="${src.dir}/overview.html"
packagenames="org.apache.hadoop.hbase.*"
destdir="${build.javadoc}"
author="true"
version="true"
use="true"
windowtitle="${Name} ${version} API"
doctitle="${Name} ${version} API"
bottom="Copyright &amp;copy; ${year} The Apache Software Foundation"
>
<packageset dir="${src.dir}">
<include name="org/apache/**"/>
</packageset>
<link href="${javadoc.link.java}"/>
<classpath >
<path refid="classpath" />
<fileset dir="${build.dir}/contrib">
<include name="**/ivy/lib/common/*.jar" />
</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/mdc_replication/src/java"/>
</javadoc>
</target>
<!-- ================================================================== -->
<!-- Run unit tests -->
<!-- ================================================================== -->
<path id="test.classpath">
<!-- ============ * * * * * N O T E * * * * * ============
${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" />
<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,ivy-retrieve-test" description="Build test jar">
<javac encoding="${build.encoding}"
srcdir="${src.test}"
includes="**/*.java"
destdir="${build.test}"
debug="${javac.debug}"
target="${javac.version}"
source="${javac.version}"
deprecation="${javac.deprecation}">
<classpath refid="test.classpath"/>
</javac>
<jar jarfile="${build.dir}/${final.name}-test.jar" >
<fileset dir="${build.test}" includes="org/**" />
<fileset dir="${build.classes}" />
<fileset dir="${src.test}" includes="**/*.properties" />
<manifest>
<attribute name="Main-Class"
value="org/apache/hadoop/hbase/PerformanceEvaluation"/>
</manifest>
</jar>
</target>
<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
printsummary="yes" showoutput="${test.output}"
haltonfailure="no" fork="yes" maxmemory="512m"
errorProperty="tests.failed" failureProperty="tests.failed"
timeout="${test.timeout}">
<sysproperty key="test.build.data" value="${build.test}/data"/>
<sysproperty key="build.test" value="${build.test}"/>
<sysproperty key="src.testdata" value="${src.testdata}"/>
<sysproperty key="contrib.name" value="${name}"/>
<sysproperty key="user.dir" value="${build.test}/data"/>
<sysproperty key="fs.defaultFS" value="${fs.default.name}"/>
<sysproperty key="hadoop.test.localoutputfile" value="${hadoop.test.localoutputfile}"/>
<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" excludes="**/${test.exclude}.java" />
</batchtest>
<batchtest todir="${build.test}" if="testcase">
<fileset dir="${src.test}" includes="**/${testcase}.java"/>
</batchtest>
</junit>
<fail if="tests.failed">Tests failed!</fail>
</target>
<target name="test-contrib" depends="compile, compile-core-test"
description="Run contrib unit tests">
<subant target="test">
<property name="version" value="${version}"/>
<fileset file="${contrib.dir}/build.xml"/>
</subant>
</target>
<target name="test" depends="test-core, test-contrib"
description="Run core, contrib unit tests">
</target>
<!-- ================================================================== -->
<!-- Clean. Delete the build files, and their directories -->
<!-- ================================================================== -->
<target name="clean-contrib" description="Clean contrib">
<subant target="clean">
<fileset file="src/contrib/build.xml"/>
</subant>
</target>
<target name="clean" depends="clean-contrib" description="Clean all old builds">
<delete dir="${build.dir}"/>
<delete dir="${docs.src}/build"/>
</target>
</project>

View File

@ -1,307 +0,0 @@
<?xml version="1.0"?>
<!--
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.
-->
<!-- Imported by contrib/*/build.xml files to share generic targets. -->
<project name="hbasebuildcontrib">
<property name="version" value="0.20.3"/>
<property name="name" value="${ant.project.name}"/>
<!-- 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="${basedir}/build.properties" />
<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"/>
<property name="conf.dir" location="${hbase.root}/conf"/>
<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.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.6/docs/api/"/>
<property name="build.encoding" value="ISO-8859-1"/>
<property name="clover.db.dir" location="${build.dir}/test/clover/db"/>
<property name="clover.report.dir" location="${build.dir}/test/clover/reports"/>
<property name="clover.jar" location="${clover.home}/lib/clover.jar"/>
<available property="clover.present" file="${clover.jar}"/>
<!-- check if clover reports should be generated -->
<condition property="clover.enabled">
<and>
<isset property="run.clover"/>
<isset property="clover.present"/>
</and>
</condition>
<import file="../../ivy-targets.xml" />
<import file="../../findbugs-targets.xml" />
<!-- the normal classpath -->
<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="libthrift-*.jar" />
<include name="zookeeper*.jar" />
</fileset>
</path>
<!-- the unit test classpath -->
<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 path="${clover.jar}"/>
</path>
<!-- to be overridden by sub-projects -->
<target name="check-contrib"/>
<target name="init-contrib"/>
<!-- ====================================================== -->
<!-- Stuff needed by all targets -->
<!-- ====================================================== -->
<target name="init" depends="check-contrib" unless="skip.contrib">
<echo message="contrib: ${name}"/>
<mkdir dir="${build.dir}"/>
<mkdir dir="${build.classes}"/>
<mkdir dir="${build.test}"/>
<mkdir dir="${build.examples}"/>
<mkdir dir="${hbase.log.dir}"/>
<antcall target="init-contrib"/>
</target>
<!-- ====================================================== -->
<!-- Compile a hbase contrib's files -->
<!-- ====================================================== -->
<target name="compile" depends="clover,init,ivy-retrieve-common" unless="skip.contrib">
<echo message="contrib: ${name}"/>
<javac
encoding="${build.encoding}"
srcdir="${src.dir}"
includes="**/*.java"
destdir="${build.classes}"
debug="${javac.debug}"
deprecation="${javac.deprecation}">
<classpath refid="classpath"/>
</javac>
</target>
<!-- ======================================================= -->
<!-- Compile a hbase contrib's example files (if available) -->
<!-- ======================================================= -->
<target name="compile-examples" depends="compile" if="examples.available">
<echo message="contrib: ${name}"/>
<javac
encoding="${build.encoding}"
srcdir="${src.examples}"
includes="**/*.java"
destdir="${build.examples}"
debug="${javac.debug}">
<classpath refid="classpath"/>
</javac>
</target>
<!-- ================================================================== -->
<!-- Compile test code -->
<!-- ================================================================== -->
<target name="compile-test" depends="compile-examples,ivy-retrieve-test" if="test.available">
<echo message="contrib: ${name}"/>
<javac
encoding="${build.encoding}"
srcdir="${src.test}"
includes="**/*.java"
destdir="${build.test}"
debug="${javac.debug}">
<classpath refid="test.classpath"/>
</javac>
</target>
<!-- ====================================================== -->
<!-- Make a hbase contrib's jar -->
<!-- ====================================================== -->
<target name="jar" depends="compile" unless="skip.contrib">
<echo message="contrib: ${name}"/>
<jar
jarfile="${build.dir}/hbase-${version}-${name}.jar"
basedir="${build.classes}"
/>
</target>
<!-- ====================================================== -->
<!-- Clover stuff -->
<!-- ====================================================== -->
<target name="clover" depends="clover.setup, clover.info"
description="Instrument the Unit tests using Clover. To use, specify -Dclover.home=&lt;base of clover installation&gt; -Drun.clover=true on the command line."/>
<target name="clover.setup" if="clover.enabled">
<taskdef resource="cloverlib.xml" classpath="${clover.jar}"/>
<mkdir dir="${clover.db.dir}"/>
<clover-setup initString="${clover.db.dir}/hbase_coverage.db">
<fileset dir="src" includes="java/**/*"/>
</clover-setup>
</target>
<target name="clover.info" unless="clover.present">
<echo>
Clover not found. Code coverage reports disabled.
</echo>
</target>
<target name="clover.check">
<fail unless="clover.present">
##################################################################
Clover not found.
Please specify -Dclover.home=&lt;base of clover installation&gt;
on the command line.
##################################################################
</fail>
</target>
<target name="generate-clover-reports" depends="clover.check, clover">
<mkdir dir="${clover.report.dir}"/>
<clover-report>
<current outfile="${clover.report.dir}" title="${final.name}">
<format type="html"/>
</current>
</clover-report>
<clover-report>
<current outfile="${clover.report.dir}/clover.xml" title="${final.name}">
<format type="xml"/>
</current>
</clover-report>
</target>
<!-- ====================================================== -->
<!-- Make a hbase contrib's examples jar -->
<!-- ====================================================== -->
<target name="jar-examples" depends="compile-examples"
if="examples.available" unless="skip.contrib">
<echo message="contrib: ${name}"/>
<jar jarfile="${build.dir}/hbase-${version}-${name}-examples.jar">
<fileset dir="${build.classes}">
</fileset>
<fileset dir="${build.examples}">
</fileset>
</jar>
</target>
<!-- ====================================================== -->
<!-- Package a hbase contrib -->
<!-- ====================================================== -->
<target name="package" depends="jar, jar-examples" unless="skip.contrib">
<mkdir dir="${dist.dir}/contrib/${name}"/>
<copy todir="${dist.dir}/contrib/${name}" includeEmptyDirs="false" flatten="true">
<fileset dir="${build.dir}">
<include name="hbase-${version}-${name}.jar" />
</fileset>
</copy>
</target>
<!-- ================================================================== -->
<!-- Run unit tests -->
<!-- ================================================================== -->
<target name="test" depends="compile-test, compile" if="test.available">
<echo message="contrib: ${name}"/>
<delete dir="${hbase.log.dir}"/>
<mkdir dir="${hbase.log.dir}"/>
<junit
printsummary="yes" showoutput="${test.output}"
haltonfailure="no" fork="yes" maxmemory="256m"
errorProperty="tests.failed" failureProperty="tests.failed"
timeout="${test.timeout}">
<sysproperty key="test.build.data" value="${build.test}/data"/>
<sysproperty key="build.test" value="${build.test}"/>
<sysproperty key="contrib.name" value="${name}"/>
<!-- requires fork=yes for:
relative File paths to use the specified user.dir
classpath to use build/contrib/*.jar
-->
<sysproperty key="user.dir" value="${build.test}/data"/>
<sysproperty key="fs.defaultFS" value="${fs.default.name}"/>
<sysproperty key="hbase.test.localoutputfile" value="${hbase.test.localoutputfile}"/>
<sysproperty key="hbase.log.dir" value="${hbase.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" excludes="**/${test.exclude}.java" />
</batchtest>
<batchtest todir="${build.test}" if="testcase">
<fileset dir="${src.test}" includes="**/${testcase}.java"/>
</batchtest>
</junit>
<fail if="tests.failed">Tests failed!</fail>
</target>
<!-- ================================================================== -->
<!-- Clean. Delete the build files, and their directories -->
<!-- ================================================================== -->
<!-- to be overridden by sub-projects -->
<target name="clean-contrib"/>
<target name="clean">
<echo message="contrib: ${name}"/>
<delete dir="${build.dir}"/>
</target>
</project>

View File

@ -1,68 +0,0 @@
<?xml version="1.0"?>
<!--
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.
-->
<project name="hbasecontrib" default="compile" basedir=".">
<!-- In case one of the contrib subdirectories -->
<!-- fails the build or test targets and you cannot fix it: -->
<!-- Then add to fileset: excludes="badcontrib/build.xml" -->
<!-- ====================================================== -->
<!-- Compile contribs. -->
<!-- ====================================================== -->
<target name="compile">
<subant target="compile">
<fileset dir="." includes="*/build.xml"/>
</subant>
</target>
<target name="compile-test">
<subant target="compile-test">
<fileset dir="." includes="*/build.xml"/>
</subant>
</target>
<!-- ====================================================== -->
<!-- Package contrib jars. -->
<!-- ====================================================== -->
<target name="package">
<subant target="package">
<fileset dir="." includes="*/build.xml"/>
</subant>
</target>
<!-- ====================================================== -->
<!-- Test all the contribs. -->
<!-- ====================================================== -->
<target name="test">
<subant target="test">
<fileset dir="." includes="*/build.xml"/>
</subant>
</target>
<!-- ====================================================== -->
<!-- Clean all the contribs. -->
<!-- ====================================================== -->
<target name="clean">
<subant target="clean">
<fileset dir="." includes="*/build.xml"/>
</subant>
</target>
</project>

View File

@ -1,42 +0,0 @@
<project name="ec2" default="package" basedir=".">
<property name="hbase.root" location="../../.." />
<import file="../build-contrib.xml"/>
<target name="compile">
<copy todir="${build.dir}">
<fileset dir="${basedir}">
<exclude name="build.xml"/>
</fileset>
</copy>
<exec executable="sed">
<arg value="-i"/>
<arg value="-e"/> <arg value="s/@HBASE_VERSION@/${version}/g"/>
<arg value="${build.dir}/bin/hbase-ec2-env.sh"/>
</exec>
</target>
<target name="package" depends="compile">
<mkdir dir="${dist.dir}/contrib/${name}"/>
<copy todir="${dist.dir}/contrib/${name}">
<fileset dir="${build.dir}"/>
</copy>
<exec executable="chmod">
<arg value="755"/>
<arg value="${dist.dir}/contrib/${name}/bin/hbase-ec2"/>
<arg value="${dist.dir}/contrib/${name}/bin/cmd-hbase-cluster"/>
<arg value="${dist.dir}/contrib/${name}/bin/create-hbase-image"/>
<arg value="${dist.dir}/contrib/${name}/bin/delete-hbase-cluster"/>
<arg value="${dist.dir}/contrib/${name}/bin/init-hbase-cluster-secgroups"/>
<arg value="${dist.dir}/contrib/${name}/bin/launch-hbase-cluster"/>
<arg value="${dist.dir}/contrib/${name}/bin/launch-hbase-master"/>
<arg value="${dist.dir}/contrib/${name}/bin/launch-hbase-slaves"/>
<arg value="${dist.dir}/contrib/${name}/bin/launch-hbase-zookeeper"/>
<arg value="${dist.dir}/contrib/${name}/bin/list-hbase-clusters"/>
<arg value="${dist.dir}/contrib/${name}/bin/revoke-hbase-cluster-secgroups"/>
<arg value="${dist.dir}/contrib/${name}/bin/terminate-hbase-cluster"/>
<arg value="${dist.dir}/contrib/${name}/bin/image/create-hbase-image-remote"/>
</exec>
</target>
</project>

View File

@ -1,82 +0,0 @@
<!--
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>
</dependencies>
</ivy-module>

View File

@ -1,52 +0,0 @@
<?xml version="1.0"?>
<!--
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.
-->
<!--
Before you can run these subtargets directly, you need
to call at top-level: ant deploy-contrib compile-core-test
-->
<project name="mdc_replication" default="jar">
<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>
<target name="package" depends="jar, jar-examples" unless="skip.contrib">
<mkdir dir="${dist.dir}/contrib/${name}"/>
<copy todir="${dist.dir}/contrib/${name}" includeEmptyDirs="false" flatten="true">
<fileset dir="${build.dir}">
<include name="hbase-${version}-${name}.jar" />
</fileset>
<fileset dir="${basedir}/bin">
<include name="add_peer.rb" />
</fileset>
</copy>
</target>
</project>

View File

@ -1,113 +0,0 @@
<!--
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" changing="true" >
<exclude conf="test"/>
</dependency>
<dependency org="org.apache.hadoop" name="hadoop-hdfs"
rev="${hadoop-hdfs.version}" conf="common->default" changing="true" >
<exclude conf="test"/>
</dependency>
<dependency org="org.apache.hadoop" name="hadoop-mapred"
rev="${hadoop-mapred.version}" conf="common->default" changing="true" >
<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" changing="true" />
<dependency org="org.apache.hadoop" name="hadoop-hdfs-test"
rev="${hadoop-hdfs.version}" conf="test->default" transitive="false" changing="true"/>
<dependency org="org.apache.hadoop" name="hadoop-mapred-test"
rev="${hadoop-mapred.version}" conf="test->default" transitive="false" changing="true"/>
<dependency org="log4j" name="log4j"
rev="${log4j.version}" conf="test->master">
<exclude conf="jmx,mail,jms"/>
</dependency>
</dependencies>
</ivy-module>

View File

@ -1,19 +1,24 @@
<?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>org.apache.hbase</groupId>
<artifactId>hbase-contrib</artifactId>
<packaging>pom</packaging>
<name>HBase Contrib</name>
<parent>
<groupId>org.apache.hbase</groupId>
<artifactId>hbase</artifactId>
<version>0.20.2-SNAPSHOT</version>
<version>0.21.0-SNAPSHOT</version>
</parent>
<modules>
<module>mdc_replication</module>
<module>stargate</module>
<module>transactional</module>
</modules>
<build>
<!-- TODO really all the modules in HBase probably should have a consistent directory structure -->
<sourceDirectory>${basedir}/src/java</sourceDirectory>

View File

@ -1,114 +0,0 @@
<project name="stargate" default="package" basedir=".">
<property name="hbase.root" location="../../.." />
<import file="../build-contrib.xml"/>
<property name="build.war.classes" location="${build.dir}/warClasses"/>
<property name="war.file" value="hbase-${version}-${name}.war"/>
<property name="web.xml.file" value="${basedir}/conf/web.xml"/>
<property name="lib.dir" value="${basedir}/lib"/>
<property name="jar.file" value="hbase-${version}-${name}.jar"/>
<property name="test.jar.file" value="hbase-${version}-${name}-test.jar"/>
<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}"/>
</target>
<target name="javadoc">
<javadoc access="public" destdir="${docs.dir}" source="${javac.source}" sourcepath="${src.dir}" splitindex="true" use="true" version="true">
<classpath refid="classpath"/>
</javadoc>
</target>
<target name="compile" depends="ivy-retrieve-common, compile-jar, compile-war">
<echo message="contrib: ${name}"/>
</target>
<target name="compile-jar" depends="init">
<javac srcdir="${src.dir}" destdir="${build.classes}" debug="${javac.debug}" source="${javac.source}">
<classpath refid="classpath"/>
</javac>
</target>
<target name="compile-war" depends="init">
<javac srcdir="${src.dir}" destdir="${build.war.classes}" debug="${javac.debug}" source="${javac.source}">
<classpath refid="classpath"/>
<exclude name="**/Main.java"/>
</javac>
</target>
<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>
</target>
<target name="test" depends="compile-test" description="Build test jar and run tests">
<junit printsummary="yes" showoutput="${test.output}" haltonfailure="no" fork="yes" forkmode="once" maxmemory="1000m" errorProperty="tests.failed" failureProperty="tests.failed" >
<sysproperty key="test.build.data" value="${build.test}/data"/>
<sysproperty key="build.test" value="${build.test}"/>
<sysproperty key="user.dir" value="${build.test}/data"/>
<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>
<batchtest todir="${build.test}" if="testcase" >
<fileset dir="${src.test}" includes="**/Test*.java" />
</batchtest>
</junit>
<fail if="tests.failed">
Tests failed!
</fail>
</target>
<target name="war" depends="compile-war">
<copy todir="${build.dir}/lib" overwrite="true">
<fileset dir="${lib.dir}"/>
<mapper type="flatten"/>
</copy>
<war destfile="${build.dir}/${war.file}" webxml="${web.xml.file}">
<lib dir="${build.dir}/lib"/>
<classes dir="${build.war.classes}"/>
</war>
</target>
<!--Override ../build-contrib.xml package-->
<target name="package" depends="jar, war" unless="skip.contrib">
<mkdir dir="${dist.dir}/contrib/${name}"/>
<copy todir="${dist.dir}/contrib/${name}" includeEmptyDirs="false" flatten="true">
<fileset dir="${build.dir}">
<include name="hbase-${version}-${name}.jar" />
</fileset>
</copy>
<copy todir="${dist.dir}/contrib/${name}" includeEmptyDirs="false" flatten="true">
<fileset dir="${build.dir}">
<include name="hbase-${version}-${name}.war" />
</fileset>
</copy>
<mkdir dir="${dist.dir}/contrib/${name}/lib"/>
<copy todir="${dist.dir}/contrib/${name}/lib" overwrite="true">
<fileset dir="${lib.dir}"/>
</copy>
</target>
<target name="clean-contrib">
<delete dir="dist"/>
</target>
</project>

View File

@ -1,128 +0,0 @@
<!--
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" changing="true" >
<exclude conf="test"/>
</dependency>
<dependency org="org.apache.hadoop" name="hadoop-hdfs"
rev="${hadoop-hdfs.version}" conf="common->default" changing="true" >
<exclude conf="test"/>
</dependency>
<dependency org="org.apache.hadoop" name="hadoop-mapred"
rev="${hadoop-mapred.version}" conf="common->default" changing="true" >
<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" changing="true" />
<dependency org="org.apache.hadoop" name="hadoop-hdfs-test"
rev="${hadoop-hdfs.version}" conf="test->default" transitive="false" changing="true" />
<dependency org="org.apache.hadoop" name="hadoop-mapred-test"
rev="${hadoop-mapred.version}" conf="test->default" transitive="false" changing="true" />
<dependency org="log4j" name="log4j"
rev="${log4j.version}" conf="test->master">
<exclude conf="jmx,mail,jms"/>
</dependency>
</dependencies>
</ivy-module>

View File

@ -1,21 +1,24 @@
<?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">
<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>org.apache.hbase</groupId>
<artifactId>hbase-contrib-stargate</artifactId>
<packaging>war</packaging>
<name>HBase Contrib - Stargate</name>
<parent>
<groupId>org.apache.hbase</groupId>
<artifactId>hbase-contrib</artifactId>
<version>0.20.2-SNAPSHOT</version>
<version>0.21.0-SNAPSHOT</version>
</parent>
<properties>
<jsr311.version>1.1.1</jsr311.version>
<protobuf.version>2.1.0</protobuf.version>
<jersey.version>1.1.4.1</jersey.version>
<hadoop-hdfs.version>0.22.0-SNAPSHOT</hadoop-hdfs.version>
</properties>
<build>
<plugins>
<plugin>
@ -27,24 +30,20 @@
</plugin>
</plugins>
</build>
<dependencies>
<dependency>
<groupId>org.apache.hbase</groupId>
<groupId>${project.groupId}</groupId>
<artifactId>hbase-core</artifactId>
<version>${project.version}</version>
</dependency>
<dependency>
<groupId>org.apache.hbase</groupId>
<groupId>${project.groupId}</groupId>
<artifactId>hbase-core</artifactId>
<version>${project.version}</version>
<classifier>tests</classifier>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.apache.hadoop</groupId>
<artifactId>hadoop-hdfs-test</artifactId>
<version>${hadoop-hdfs.version}</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>javax.ws.rs</groupId>

View File

@ -1,56 +0,0 @@
<?xml version="1.0"?>
<!--
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.
-->
<!--
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" 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 -->
<!-- ====================================================== -->
<target name="package" depends="jar, jar-examples" unless="skip.contrib">
<mkdir dir="${dist.dir}/contrib/${name}"/>
<copy todir="${dist.dir}/contrib/${name}" includeEmptyDirs="false" flatten="true">
<fileset dir="${build.dir}">
<include name="hbase-${version}-${name}.jar" />
</fileset>
<fileset dir="${basedir}/bin">
<include name="TableIndexed.rb" />
</fileset>
</copy>
</target>
</project>

View File

@ -1,107 +0,0 @@
<!--
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" changing="true" >
<exclude conf="test"/>
</dependency>
<dependency org="org.apache.hadoop" name="hadoop-hdfs"
rev="${hadoop-hdfs.version}" conf="common->default" changing="true" >
<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" changing="true"/>
-->
<dependency org="org.apache.hadoop" name="hadoop-core-test"
rev="${hadoop-core.version}" conf="test->default" transitive="false" changing="true" />
<dependency org="org.apache.hadoop" name="hadoop-hdfs-test"
rev="${hadoop-hdfs.version}" conf="test->default" transitive="false" changing="true" />
<dependency org="log4j" name="log4j"
rev="${log4j.version}" conf="test->master">
<exclude conf="jmx,mail,jms"/>
</dependency>
</dependencies>
</ivy-module>

View File

@ -1,37 +1,31 @@
<?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">
<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>org.apache.hbase</groupId>
<artifactId>hbase-contrib-transactional</artifactId>
<packaging>jar</packaging>
<name>HBase Contrib - Transactional</name>
<parent>
<groupId>org.apache.hbase</groupId>
<artifactId>hbase-contrib</artifactId>
<version>0.20.2-SNAPSHOT</version>
<version>0.21.0-SNAPSHOT</version>
</parent>
<properties>
</properties>
<build>
</build>
<dependencies>
<dependency>
<groupId>org.apache.hbase</groupId>
<groupId>${project.groupId}</groupId>
<artifactId>hbase-core</artifactId>
<version>${project.version}</version>
</dependency>
<dependency>
<groupId>org.apache.hbase</groupId>
<groupId>${project.groupId}</groupId>
<artifactId>hbase-core</artifactId>
<version>${project.version}</version>
<classifier>tests</classifier>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.apache.hadoop</groupId>
<artifactId>hadoop-hdfs-test</artifactId>
<version>${hadoop-hdfs.version}</version>
<scope>test</scope>
</dependency>
</dependencies>
</project>

View File

@ -1,14 +1,16 @@
<?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">
<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>org.apache.hbase</groupId>
<artifactId>hbase-core</artifactId>
<packaging>jar</packaging>
<name>HBase Core</name>
<parent>
<groupId>org.apache.hbase</groupId>
<artifactId>hbase</artifactId>
<version>0.20.2-SNAPSHOT</version>
<version>0.21.0-SNAPSHOT</version>
</parent>
<!-- TODO still need Repositories defined-->
@ -21,15 +23,16 @@
<directory>src/main/resources</directory>
</resource>
<resource>
<directory>src/main/</directory>
<directory>src/main/webapps</directory>
<includes>
<include>webapps/**/*.gif</include>
<include>webapps/**/*.css</include>
<include>webapps/**/*.html</include>
<include>webapps/**/*.xml</include>
<include>*/.gif</include>
<include>*/.css</include>
<include>*/.html</include>
<include>*/.xml</include>
</includes>
</resource>
</resources>
<plugins>
<!-- Run with -Dmaven.test.skip.exec=true to build -tests.jar without running tests (this is needed for upstream projects whose tests need this jar simply for compilation)-->
<plugin>
@ -58,7 +61,6 @@
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-source-plugin</artifactId>
<version>2.1.1</version>
<executions>
<execution>
<id>attach-sources</id>
@ -89,7 +91,17 @@
<id>JSPC</id>
<phase>generate-sources</phase>
<configuration>
<tasks><taskdef classname="org.apache.jasper.JspC" name="jspcompiler" classpathref="maven.compile.classpath"/><jspcompiler uriroot="${basedir}/src/main/resources/webapps/master" outputdir="${project.build.directory}/jspc" package="org.apache.hadoop.hbase.generated.master" webxml="${basedir}/src/main/resources/webapps/master/WEB-INF/web.xml"/><jspcompiler uriroot="${basedir}/src/main/resources/webapps/regionserver" outputdir="${project.build.directory}/jspc" package="org.apache.hadoop.hbase.generated.regionserver" webxml="${basedir}/src/main/resources/webapps/regionserver/WEB-INF/web.xml"/></tasks>
<tasks>
<taskdef classname="org.apache.jasper.JspC" name="jspcompiler" classpathref="maven.compile.classpath"/>
<jspcompiler uriroot="${basedir}/src/main/resources/webapps/master"
outputdir="${project.build.directory}/jspc"
package="org.apache.hadoop.hbase.generated.master"
webxml="${basedir}/src/main/resources/webapps/master/WEB-INF/web.xml"/>
<jspcompiler uriroot="${basedir}/src/main/resources/webapps/regionserver"
outputdir="${project.build.directory}/jspc"
package="org.apache.hadoop.hbase.generated.regionserver"
webxml="${basedir}/src/main/resources/webapps/regionserver/WEB-INF/web.xml"/>
</tasks>
</configuration>
<goals>
<goal>run</goal>
@ -143,6 +155,7 @@
</plugin>
</plugins>
</build>
<dependencies>
<dependency>
<groupId>log4j</groupId>
@ -171,8 +184,6 @@
<dependency>
<groupId>org.apache.hadoop</groupId>
<artifactId>hadoop-mapred-test</artifactId>
<version>${hadoop-mapred.version}</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.apache.hadoop</groupId>
@ -182,8 +193,6 @@
<dependency>
<groupId>org.apache.hadoop</groupId>
<artifactId>hadoop-hdfs-test</artifactId>
<version>${hadoop-hdfs.version}</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.apache.hadoop</groupId>
@ -193,8 +202,6 @@
<dependency>
<groupId>org.apache.hadoop</groupId>
<artifactId>hadoop-core-test</artifactId>
<version>${hadoop-core.version}</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.apache.thrift</groupId>
@ -212,41 +219,25 @@
<version>${commons-math.version}</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>commons-lang</groupId>
<artifactId>commons-lang</artifactId>
<version>${commons-lang.version}</version>
</dependency>
<!--
TODO mention to Hbase team to tell the avro team about this problem,
hbase-core depends on hadoop, which then:
[INFO] | \- org.apache.hadoop:avro:jar:1.2.0:compile
[INFO] | +- org.slf4j:slf4j-simple:jar:1.5.8:compile
[INFO] | | \- org.slf4j:slf4j-api:jar:1.5.2:compile
see: https://forum.hibernate.org/viewtopic.php?p=2400801 and http://old.nabble.com/org.slf4j.impl.StaticLoggerBinder.SINGLETON-td20987705.html
upgrading to 1.5.6 will fix this
-->
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-api</artifactId>
<version>1.5.8</version>
<version>${slf4j.version}</version>
</dependency>
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-log4j12</artifactId>
<version>${slf4j.version}</version>
</dependency>
<!-- TODO not sure jruby is needed for Hbase-core per se, maybe just for stargate?
<dependency>
<groupId>org.jruby</groupId>
<artifactId>jruby-complete</artifactId>
<version>${jruby.version}</version>
</dependency>
-->
</dependencies>
</project>

View File

@ -1,59 +0,0 @@
<?xml version="1.0"?>
<!--
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.
-->
<project basedir="." >
<property name="ibiblio_url" value="http://mirrors.ibiblio.org/pub/mirrors/maven2/" />
<property name="findbugs.version" value="1.3.9" />
<property name="findbugs-ant.jar" location="${user.home}/.ivy2/findbugs-ant-${findbugs.version}.jar" />
<property name="findbugs.zip" location="${user.home}/.ivy2/findbugs-${findbugs.version}.zip" />
<property name="findbugs_task_repo_url" value="${ibiblio_url}/com/google/code/findbugs/findbugs-ant/${findbugs.version}/findbugs-ant-${findbugs.version}.jar" />
<property name="findbugs_repo_url" value="http://downloads.sourceforge.net/project/findbugs/findbugs/${findbugs.version}/findbugs-${findbugs.version}.zip" />
<property name="findbugs.install.dir" location="${build.dir}" />
<property name="findbugs.output.file" location="${findbugs.install.dir}/findbugs-output.html" />
<property name="findbugs.home" location="${findbugs.install.dir}/findbugs-${findbugs.version}" />
<target name="findbugs.init">
<get src="${findbugs_task_repo_url}" dest="${findbugs-ant.jar}" usetimestamp="true" />
<taskdef name="findbugs" classname="edu.umd.cs.findbugs.anttask.FindBugsTask">
<classpath>
<pathelement location="${findbugs-ant.jar}" />
</classpath>
</taskdef>
</target>
<target name="findbugs.install" depends="findbugs.init">
<get src="${findbugs_repo_url}" dest="${findbugs.zip}" usetimestamp="true" />
<mkdir dir="${findbugs.install.dir}" />
<unzip src="${findbugs.zip}" dest="${findbugs.install.dir}" />
</target>
<!-- To be overridden by other projects importing this -->
<target name="compile" />
<target name="findbugs" depends="findbugs.init,findbugs.install,compile" description="Run findbugs on the tree">
<findbugs home="${findbugs.home}" output="html" outputFile="${findbugs.output.file}">
<sourcePath path="${src.dir}" />
<class location="${build.classes}" />
<auxClasspath refid="classpath" />
</findbugs>
</target>
</project>

View File

@ -1,111 +0,0 @@
<?xml version="1.0"?>
<!--
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.
-->
<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>

128
ivy.xml
View File

@ -1,128 +0,0 @@
<!--
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>
HBase
</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,kfs,mandatory,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="kfs" description="dependencies for KFS file system support"/>
<conf name="ftp" description="dependencies for workign with FTP filesytems"
extends="mandatory"/>
<conf name="common" extends="runtime,mandatory,httpclient,ftp"
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"/>
<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="jdiff" visibility="private" extends="log4j,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" changing="true" >
<exclude conf="test"/>
</dependency>
<dependency org="org.apache.hadoop" name="hadoop-hdfs"
rev="${hadoop-hdfs.version}" conf="common->default" changing="true" >
<exclude conf="test"/>
</dependency>
<dependency org="org.apache.hadoop" name="hadoop-mapred"
rev="${hadoop-mapred.version}" conf="common->default" changing="true" >
<exclude conf="test"/>
</dependency>
<dependency org="log4j" name="log4j"
rev="${log4j.version}" conf="common->master">
<exclude conf="jmx,mail,jms"/>
</dependency>
<dependency org="org.jruby" name="jruby-complete"
rev="${jruby.version}" conf="common->default" />
<!-- Thrift dependencies manually hardcoded until THRIFT-363 is in place -->
<dependency org="org.slf4j" name="slf4j-api" rev="${slf4j.version}"
conf="common->default" />
<dependency org="org.slf4j" name="slf4j-simple" rev="${slf4j.version}"
conf="common->default" />
<dependency org="commons-lang" name="commons-lang" rev="${commons-lang.version}"
conf="common->default" />
<!-- End Thrift dependency -->
<!-- ZK dependencies manually hardcoded until ZOOKEEPER-224 in place -->
<dependency org="jline" name="jline" rev="${jline.version}" transitive="false"
conf="common->default" />
<!-- End ZK dependency -->
<!--
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" changing="true" />
<dependency org="org.apache.hadoop" name="hadoop-hdfs-test"
rev="${hadoop-hdfs.version}" conf="test->default" transitive="false" changing="true" />
<dependency org="org.apache.hadoop" name="hadoop-mapred-test"
rev="${hadoop-mapred.version}" conf="test->default" transitive="false" changing="true" />
<dependency org="org.apache.commons" name="commons-math"
rev="${commons-math.version}" conf="test->default"/>
</dependencies>
</ivy-module>

Binary file not shown.

View File

@ -1,52 +0,0 @@
<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>

View File

@ -1,49 +0,0 @@
# 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
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
slf4j.version=1.5.8
commons-lang.version=2.4
jline.version=0.9.94

245
pom.xml
View File

@ -1,13 +1,24 @@
<?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">
<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>org.apache.hbase</groupId>
<artifactId>hbase</artifactId>
<packaging>pom</packaging>
<version>0.20.2-SNAPSHOT</version>
<version>0.21.0-SNAPSHOT</version>
<name>HBase</name>
<description>HBase is the Hadoop database. Use it when you need random, realtime read/write access to your Big Data. This project's goal is the hosting of very large tables -- billions of rows X millions of columns -- atop clusters of commodity hardware.</description>
<description>HBase is the Hadoop database. Use it when you need random, realtime read/write access to your Big Data.
This project's goal is the hosting of very large tables -- billions of rows X millions of columns -- atop clusters
of commodity hardware.
</description>
<url>http://hadoop.apache.org/hbase</url>
<modules>
<module>core</module>
<module>contrib</module>
</modules>
<licenses>
<license>
<name>Apache 2</name>
@ -16,31 +27,131 @@
<comments>A business-friendly OSS license</comments>
</license>
</licenses>
<scm>
<connection>scm:svn:http://svn.apache.org/repos/asf/hadoop/hbase/trunk</connection>
<developerConnection>scm:svn:https://svn.apache.org/repos/asf/hadoop/hbase/trunk</developerConnection>
<url>http://svn.apache.org/viewvc/hadoop/hbase/trunk</url>
</scm>
<issueManagement>
<system>JIRA</system>
<url>http://issues.apache.org/jira/</url>
</issueManagement>
<ciManagement>
<system>hudson</system>
<url>http://hudson.zones.apache.org/hudson/view/HBase/</url>
</ciManagement>
<mailingLists>
<mailingList>
<name>User List</name>
<subscribe>hbase-user-subscribe@hadoop.apache.org</subscribe>
<unsubscribe>hbase-user-unsubscribe@hadoop.apache.org</unsubscribe>
<post>hbase-user@hadoop.apache.org</post>
<archive>http://mail-archives.apache.org/mod_mbox/hadoop-hbase-user/</archive>
<otherArchives>
<otherArchive>http://dir.gmane.org/gmane.comp.java.hadoop.hbase.user</otherArchive>
</otherArchives>
</mailingList>
<mailingList>
<name>Developer List</name>
<subscribe>hbase-dev-subscribe@hadoop.apache.org</subscribe>
<unsubscribe>hbase-dev-unsubscribe@hadoop.apache.org</unsubscribe>
<post>hbase-dev@hadoop.apache.org</post>
<archive>http://mail-archives.apache.org/mod_mbox/hadoop-hbase-dev/</archive>
<otherArchives>
<otherArchive>http://dir.gmane.org/gmane.comp.java.hadoop.hbase.devel</otherArchive>
</otherArchives>
</mailingList>
<mailingList>
<name>Commits List</name>
<subscribe>hbase-commits-subscribe@hadoop.apache.org</subscribe>
<unsubscribe>hbase-commits-unsubscribe@hadoop.apache.org</unsubscribe>
<archive>http://mail-archives.apache.org/mod_mbox/hadoop-hbase-commits/</archive>
</mailingList>
</mailingLists>
<developers>
<developer>
<id>stack</id>
<name>Michael Stack</name>
<email>stack@apache.org</email>
<id>apurtell</id>
<name>Andrew Purtell</name>
<email>apurtell@apache.org</email>
<timezone>-8</timezone>
<organization>Trend Micro</organization>
<organizationUrl>http://www.trendmicro.com</organizationUrl>
</developer>
<developer>
<id>bryanduxbury</id>
<name>Bryan Duxbury</name>
<email>bryan@rapleaf.com</email>
<timezone>-8</timezone>
<organization>Rapleaf</organization>
<organizationUrl>http://www.rapleaf.com</organizationUrl>
</developer>
<developer>
<id>jdcryans</id>
<name>Jean-Daniel Cryans</name>
<email>jdcryans@apache.org</email>
<timezone>-8</timezone>
<organization>StumbleUpon</organization>
<organizationUrl>http://www.stumbleupon.com</organizationUrl>
</developer>
<developer>
<id>jgray</id>
<name>Jonathan Gray</name>
<email>jgray@streamy.com</email>
<timezone>-8</timezone>
<organization>Streamy</organization>
<organizationUrl>http://www.streamy.com</organizationUrl>
</developer>
<developer>
<id>jimk</id>
<name>Jim Kellerman</name>
<email>jimk@apache.org</email>
<timezone>-8</timezone>
<organization>Powerset</organization>
<organizationUrl>http://www.powerset.com/</organizationUrl>
</developer>
<developer>
<id>larsgeorge</id>
<name>Lars George</name>
<email>lars.george@gmail.com</email>
<timezone>+1</timezone>
<organization>WorldLingo</organization>
<organizationUrl>http://www.worldlingo.com/</organizationUrl>
</developer>
<developer>
<id>nitay</id>
<name>Nitay Joffe</name>
<email>nitay@apache.org</email>
<timezone>-8</timezone>
<organization>Powerset</organization>
<organizationUrl>http://www.powerset.com/</organizationUrl>
</developer>
<developer>
<id>rawson</id>
<name>Ryan Rawson</name>
<email>rawson@apache.org</email>
<timezone>-8</timezone>
<organization>StumbleUpon</organization>
<organizationUrl>http://www.stumbleupon.com</organizationUrl>
</developer>
<developer>
<id>stack</id>
<name>Michael Stack</name>
<email>stack@apache.org</email>
<timezone>-8</timezone>
<organization>Powerset</organization>
<organizationUrl>http://www.powerset.com/</organizationUrl>
</developer>
</developers>
<issueManagement>
<system>JIRA</system>
<url>http://issues.apache.org/jira/</url>
</issueManagement>
<properties>
<compileSource>1.6</compileSource>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<log4j.version>1.2.15</log4j.version>
<commons-lang.version>2.4</commons-lang.version>
<commons-math.version>2.0</commons-math.version>
@ -50,13 +161,10 @@
<!-- TODO specify external repositories - Note the following 2 resources are not downloadable from a public repository, you'll need to place these manually by using 'mvn install:file' or use something like Nexus as a repository manager -->
<zookeeper.version>3.2.2</zookeeper.version>
<thrift.version>0.2.0</thrift.version>
<jruby.version>1.3.1</jruby.version>
<jruby.version>1.4.0</jruby.version>
<slf4j.version>1.5.8</slf4j.version>
</properties>
<modules>
<module>core</module>
<module>contrib</module>
</modules>
<repositories>
<repository>
<id>asf-snapshots</id>
@ -115,26 +223,53 @@
</releases>
</repository>
</repositories>
<build>
<directory>target</directory>
<outputDirectory>target/classes</outputDirectory>
<finalName>${artifactId}-${version}</finalName>
<!-- Some plugins (javadoc for example) can be used in the normal build- and the site phase.
These plugins inherit their options from the <reporting> section below. These settings
can be overwritten here. -->
<pluginManagement>
<plugins>
<plugin>
<artifactId>maven-compiler-plugin</artifactId>
<version>2.1</version>
<configuration>
<source>${compileSource}</source>
<target>${compileSource}</target>
<showWarnings>true</showWarnings>
<showDeprecation>true</showDeprecation>
</configuration>
</plugin>
<plugin>
<artifactId>maven-assembly-plugin</artifactId>
<version>2.2-beta-5</version>
</plugin>
<plugin>
<artifactId>maven-jar-plugin</artifactId>
<version>2.3</version>
</plugin>
<plugin>
<artifactId>maven-source-plugin</artifactId>
<version>2.1.1</version>
</plugin>
<plugin>
<artifactId>maven-surefire-plugin</artifactId>
<version>2.5</version>
</plugin>
<plugin>
<artifactId>maven-javadoc-plugin</artifactId>
<version>2.6.1</version>
</plugin>
</plugins>
</pluginManagement>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<configuration>
<source>${compileSource}</source>
<target>${compileSource}</target>
<encoding>UTF-8</encoding>
<showWarnings>true</showWarnings>
<showDeprecations>true</showDeprecations>
</configuration>
</plugin>
<plugin>
<artifactId>maven-assembly-plugin</artifactId>
<!-- see http://jira.codehaus.org/browse/MASSEMBLY-109, beta-5 is out, but I'm having an error downloading that plugin, maybe Nexus related, not sure -->
<version>2.2-beta-4</version>
<!-- THIS might not be doable
<executions>
<execution>
@ -146,6 +281,7 @@
</executions>
-->
<configuration>
<tarLongFileMode>gnu</tarLongFileMode>
<descriptors>
<descriptor>src/assembly/bin.xml</descriptor>
</descriptors>
@ -157,6 +293,42 @@
</plugin>
</plugins>
</build>
<dependencyManagement>
<dependencies>
<dependency>
<groupId>${project.groupId}</groupId>
<artifactId>hbase-core</artifactId>
<version>${project.version}</version>
</dependency>
<dependency>
<groupId>${project.groupId}</groupId>
<artifactId>hbase-core</artifactId>
<version>${project.version}</version>
<classifier>tests</classifier>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.apache.hadoop</groupId>
<artifactId>hadoop-core-test</artifactId>
<version>${hadoop-core.version}</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.apache.hadoop</groupId>
<artifactId>hadoop-hdfs-test</artifactId>
<version>${hadoop-hdfs.version}</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.apache.hadoop</groupId>
<artifactId>hadoop-mapred-test</artifactId>
<version>${hadoop-mapred.version}</version>
<scope>test</scope>
</dependency>
</dependencies>
</dependencyManagement>
<distributionManagement>
<repository>
<id>Apache Public Releases</id>
@ -172,6 +344,8 @@
<url>scp://people.apache.org/home/psmith/public_html/hbase/sandbox/hbase/</url>
</site>
</distributionManagement>
<!-- See http://jira.codehaus.org/browse/MSITE-443 why the settings need to be here and not in pluginManagement. -->
<reporting>
<plugins>
<plugin>
@ -200,16 +374,15 @@
</plugin>
<plugin>
<artifactId>maven-javadoc-plugin</artifactId>
<version>2.6.1</version>
<configuration>
<encoding>UTF-8</encoding>
<docencoding>UTF-8</docencoding>
<charset>UTF-8</charset>
<!--
This is probably not needed, given the smallness of the HBase source code, but left here in case
<minmemory>128m</minmemory>
<maxmemory>1024m</maxmemory>
-->
<docfilessubdirs>true</docfilessubdirs>
</configuration>
<!--
This is probably not needed, given the smallness of the HBase source code, but left here in case
<minmemory>128m</minmemory>
<maxmemory>1024m</maxmemory>
-->
</plugin>
<plugin>
<groupId>org.codehaus.mojo</groupId>

View File

@ -1,10 +1,12 @@
<?xml version="1.0"?>
<assembly xmlns="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.0 http://maven.apache.org/xsd/assembly-1.1.0.xsd">
<assembly xmlns="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.1"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.1 http://maven.apache.org/xsd/assembly-1.1.1.xsd">
<id>bin</id>
<formats>
<format>tar.gz</format>
</formats>
<includeBaseDirectory>false</includeBaseDirectory>
<includeBaseDirectory>true</includeBaseDirectory>
<moduleSets>
<moduleSet>
<includes>
@ -33,6 +35,15 @@
<unpack>false</unpack>
</binaries>
</moduleSet>
<moduleSet>
<includes>
<include>org.apache.hbase:hbase-contrib-mdc_replication</include>
</includes>
<binaries>
<outputDirectory>contrib/mdc_replication/</outputDirectory>
<unpack>false</unpack>
</binaries>
</moduleSet>
<moduleSet>
<includes>
<include>org.apache.hbase:hbase-contrib-stargate</include>
@ -60,6 +71,7 @@
<fileSets>
<fileSet>
<includes>
<include>${basedir}/CHANGES*</include>
<include>${basedir}/README*</include>
<include>${basedir}/LICENSE*</include>
<include>${basedir}/NOTICE*</include>