HBASE-4336 Convert source tree into maven modules
git-svn-id: https://svn.apache.org/repos/asf/hbase/trunk@1342856 13f79535-47bb-0310-9956-ffa450edef68
This commit is contained in:
parent
1ba1b77ae8
commit
390f32d79f
|
@ -1,12 +1,13 @@
|
|||
/.arc_jira_lib
|
||||
/.classpath
|
||||
/.externalToolBuilders
|
||||
/.project
|
||||
/.settings
|
||||
.project
|
||||
*.settings/
|
||||
.classpath
|
||||
/build
|
||||
/.idea/
|
||||
/logs
|
||||
/target
|
||||
*target/
|
||||
*.iml
|
||||
*.orig
|
||||
*~
|
||||
hbase-*/test
|
||||
|
|
52
bin/hbase
52
bin/hbase
|
@ -124,12 +124,19 @@ if [ "$HBASE_HEAPSIZE" != "" ]; then
|
|||
fi
|
||||
|
||||
# so that filenames w/ spaces are handled correctly in loops below
|
||||
ORIG_IFS=$IFS
|
||||
IFS=
|
||||
|
||||
# CLASSPATH initially contains $HBASE_CONF_DIR
|
||||
CLASSPATH="${HBASE_CONF_DIR}"
|
||||
CLASSPATH=${CLASSPATH}:$JAVA_HOME/lib/tools.jar
|
||||
|
||||
add_to_cp_if_exists() {
|
||||
if [ -d "$@" ]; then
|
||||
CLASSPATH=${CLASSPATH}:"$@"
|
||||
fi
|
||||
}
|
||||
|
||||
add_maven_deps_to_classpath() {
|
||||
# Need to generate classpath from maven pom. This is costly so generate it
|
||||
# and cache it. Save the file into our target dir so a mvn clean will get
|
||||
|
@ -142,18 +149,25 @@ add_maven_deps_to_classpath() {
|
|||
CLASSPATH=${CLASSPATH}:`cat "${f}"`
|
||||
}
|
||||
|
||||
|
||||
add_maven_main_classes_to_classpath() {
|
||||
if [ -d "$HBASE_HOME/target/classes" ]; then
|
||||
CLASSPATH=${CLASSPATH}:$HBASE_HOME/target/classes
|
||||
fi
|
||||
# assumes all modules are named hbase-* in the top level directory
|
||||
IFS=$ORIG_IFS
|
||||
for module in `ls $HBASE_HOME | grep 'hbase-*'`
|
||||
do
|
||||
add_to_cp_if_exists "$HBASE_HOME/$module/target/classes"
|
||||
# Add the root dir too. We need to do this so we can find hbase-webapps
|
||||
#add_to_cp_if_exists "$HBASE_HOME/$module/target/"
|
||||
done
|
||||
}
|
||||
|
||||
add_maven_test_classes_to_classpath() {
|
||||
# For developers, add hbase classes to CLASSPATH
|
||||
f="$HBASE_HOME/target/test-classes"
|
||||
if [ -d "${f}" ]; then
|
||||
CLASSPATH=${CLASSPATH}:${f}
|
||||
fi
|
||||
add_maven_test_classes_to_classpath(){
|
||||
# assumes all modules are named hbase-* in the top level directory
|
||||
IFS=$ORIG_IFS
|
||||
for module in `ls $HBASE_HOME | grep 'hbase-*'`
|
||||
do
|
||||
add_to_cp_if_exists "$HBASE_HOME/$module/target/test-classes"
|
||||
done
|
||||
}
|
||||
|
||||
# Add maven target directory
|
||||
|
@ -165,14 +179,16 @@ fi
|
|||
|
||||
# For releases, add hbase & webapps to CLASSPATH
|
||||
# Webapps must come first else it messes up Jetty
|
||||
if [ -d "$HBASE_HOME/hbase-webapps" ]; then
|
||||
CLASSPATH=${CLASSPATH}:$HBASE_HOME
|
||||
if [ -d "$HBASE_HOME/hbase-server/src/main/resources/hbase-webapps" ]; then
|
||||
add_to_cp_if_exists "$HBASE_HOME/hbase-server/"
|
||||
fi
|
||||
if [ -d "$HBASE_HOME/target/hbase-webapps" ]; then
|
||||
CLASSPATH="${CLASSPATH}:${HBASE_HOME}/target"
|
||||
if [ -d "$HBASE_HOME/hbase-server/target/hbase-webapps" ]; then
|
||||
add_to_cp_if_exists "${HBASE_HOME}/hbase-server/target"
|
||||
fi
|
||||
for f in $HBASE_HOME/hbase*.jar; do
|
||||
if [[ $f = *sources.jar ]]
|
||||
|
||||
#add the hbase jars for each module
|
||||
for f in $HBASE_HOME/hbase-jars/hbase*.jar; do
|
||||
if [[ $f = *sources.jar ]]
|
||||
then
|
||||
: # Skip sources.jar
|
||||
elif [ -f $f ]
|
||||
|
@ -254,6 +270,12 @@ if [ "$COMMAND" = "shell" ] ; then
|
|||
if [ "$JRUBY_HOME" != "" ] ; then
|
||||
CLASSPATH="$JRUBY_HOME/lib/jruby.jar:$CLASSPATH"
|
||||
HBASE_OPTS="$HBASE_OPTS -Djruby.home=$JRUBY_HOME -Djruby.lib=$JRUBY_HOME/lib"
|
||||
fi
|
||||
#find the hbase ruby sources
|
||||
if [ -d "$HBASE_HOME/lib/ruby" ]; then
|
||||
HBASE_OPTS="$HBASE_OPTS -Dhbase.ruby.sources=$HBASE_HOME/lib/ruby"
|
||||
else
|
||||
HBASE_OPTS="$HBASE_OPTS -Dhbase.ruby.sources=$HBASE_HOME/hbase-server/src/main/ruby"
|
||||
fi
|
||||
CLASS="org.jruby.Main -X+O ${JRUBY_OPTS} ${HBASE_HOME}/bin/hirb.rb"
|
||||
elif [ "$COMMAND" = "hbck" ] ; then
|
||||
|
|
10
bin/hirb.rb
10
bin/hirb.rb
|
@ -36,14 +36,12 @@ include Java
|
|||
|
||||
# Some goodies for hirb. Should these be left up to the user's discretion?
|
||||
require 'irb/completion'
|
||||
require 'pathname'
|
||||
|
||||
# Add the $HBASE_HOME/lib/ruby OR $HBASE_HOME/src/main/ruby/lib directory
|
||||
# Add the directory names in hbase.jruby.sources commandline option
|
||||
# to the ruby load path so I can load up my HBase ruby modules
|
||||
if File.exists?(File.join(File.dirname(__FILE__), "..", "lib", "ruby", "hbase.rb"))
|
||||
$LOAD_PATH.unshift File.join(File.dirname(__FILE__), "..", "lib", "ruby")
|
||||
else
|
||||
$LOAD_PATH.unshift File.join(File.dirname(__FILE__), "..", "src", "main", "ruby")
|
||||
end
|
||||
sources = java.lang.System.getProperty('hbase.ruby.sources')
|
||||
$LOAD_PATH.unshift Pathname.new(sources)
|
||||
|
||||
#
|
||||
# FIXME: Switch args processing to getopt
|
||||
|
|
|
@ -0,0 +1,337 @@
|
|||
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||||
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
|
||||
<!--
|
||||
/**
|
||||
* 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.
|
||||
*/
|
||||
-->
|
||||
<modelVersion>4.0.0</modelVersion>
|
||||
|
||||
<parent>
|
||||
<artifactId>hbase</artifactId>
|
||||
<groupId>org.apache.hbase</groupId>
|
||||
<version>0.95-SNAPSHOT</version>
|
||||
<relativePath>..</relativePath>
|
||||
</parent>
|
||||
|
||||
<artifactId>hbase-assembly</artifactId>
|
||||
<name>HBase - Assembly</name>
|
||||
<description>Assembly all HBase modules into deployable packages</description>
|
||||
|
||||
<properties>
|
||||
<!-- Have to hardcode the final here because the submodule can't seem to resolve parent in ant tasks -->
|
||||
<final.dir.name>hbase-${project.version}</final.dir.name>
|
||||
</properties>
|
||||
|
||||
<build>
|
||||
<pluginManagement>
|
||||
<plugins>
|
||||
<!--This plugin's configuration is used to store Eclipse m2e settings only.
|
||||
It has no influence on the Maven build itself.
|
||||
Ensures that we don't error on the plugins as unrecognized-->
|
||||
<plugin>
|
||||
<groupId>org.eclipse.m2e</groupId>
|
||||
<artifactId>lifecycle-mapping</artifactId>
|
||||
<configuration>
|
||||
<lifecycleMappingMetadata>
|
||||
<pluginExecutions>
|
||||
<pluginExecution>
|
||||
<pluginExecutionFilter>
|
||||
<groupId>org.apache.maven.plugins</groupId>
|
||||
<artifactId>maven-antrun-plugin</artifactId>
|
||||
<versionRange>[1.6,)</versionRange>
|
||||
<goals>
|
||||
<goal>run</goal>
|
||||
</goals>
|
||||
</pluginExecutionFilter>
|
||||
<action>
|
||||
<ignore></ignore>
|
||||
</action>
|
||||
</pluginExecution>
|
||||
</pluginExecutions>
|
||||
</lifecycleMappingMetadata>
|
||||
</configuration>
|
||||
</plugin>
|
||||
</plugins>
|
||||
</pluginManagement>
|
||||
|
||||
<plugins>
|
||||
<!-- Run the ant packaging to build the directory to tar -->
|
||||
<plugin>
|
||||
<artifactId>maven-assembly-plugin</artifactId>
|
||||
<configuration>
|
||||
<skipAssembly>false</skipAssembly>
|
||||
<attach>false</attach>
|
||||
<tarLongFileMode>gnu</tarLongFileMode>
|
||||
<appendAssemblyId>false</appendAssemblyId>
|
||||
<descriptors>
|
||||
<descriptor>src/assembly/all.xml</descriptor>
|
||||
</descriptors>
|
||||
</configuration>
|
||||
<executions>
|
||||
<execution>
|
||||
<id>prepare-package</id>
|
||||
<phase>prepare-package</phase>
|
||||
<goals>
|
||||
<goal>single</goal>
|
||||
</goals>
|
||||
</execution>
|
||||
</executions>
|
||||
</plugin>
|
||||
|
||||
<plugin>
|
||||
<artifactId>maven-antrun-plugin</artifactId>
|
||||
<executions>
|
||||
<!-- Include the arc integration in an early phase -->
|
||||
<execution>
|
||||
<id>arc-setup</id>
|
||||
<phase>initialize</phase>
|
||||
<configuration>
|
||||
<tasks if="arc">
|
||||
<get dest="${project.build.directory}/arc-jira.tar.gz"
|
||||
src="https://github.com/facebook/arc-jira/tarball/master" />
|
||||
<untar src="${project.build.directory}/arc-jira.tar.gz"
|
||||
compression="gzip" dest="${project.build.directory}">
|
||||
<patternset>
|
||||
<include name="facebook-arc-jira-*/arc_jira_lib/**" />
|
||||
</patternset>
|
||||
</untar>
|
||||
<move todir="${basedir}">
|
||||
<fileset dir="${project.build.directory}">
|
||||
<include name="facebook-arc-jira-*/arc_jira_lib/**" />
|
||||
</fileset>
|
||||
<mapper type="regexp" from="^facebook-arc-jira-([^/])*/(.*)"
|
||||
to="\.\2" />
|
||||
</move>
|
||||
<delete includeemptydirs="true">
|
||||
<fileset dir="${project.build.directory}">
|
||||
<include name="facebook-arc-jira-*" />
|
||||
<include name="arc-jira.tar.gz" />
|
||||
</fileset>
|
||||
</delete>
|
||||
</tasks>
|
||||
</configuration>
|
||||
<goals>
|
||||
<goal>run</goal>
|
||||
</goals>
|
||||
</execution>
|
||||
|
||||
<!-- Do the final packaging steps -->
|
||||
<execution>
|
||||
<id>package</id>
|
||||
<phase>package</phase>
|
||||
<configuration>
|
||||
<target>
|
||||
<!-- Complements the assembly -->
|
||||
<mkdir
|
||||
dir="${project.build.directory}/${project.build.finalName}/lib/native/${build.platform}" />
|
||||
|
||||
<!-- Using Unix cp to preserve symlinks, using script to handle wildcards
|
||||
to manage movement of the nativelibs -->
|
||||
<echo file="${project.build.directory}/copynativelibs.sh">
|
||||
if [ `ls ${project.build.directory}/nativelib |
|
||||
wc -l` -ne 0 ]; then
|
||||
cp -PR
|
||||
${project.build.directory}/nativelib/lib*
|
||||
${project.build.directory}/${project.build.finalName}/${project.build.finalName}/lib/native/${build.platform}
|
||||
fi
|
||||
</echo>
|
||||
|
||||
<!-- Do the native lib copying -->
|
||||
<exec executable="sh" dir="${project.build.directory}"
|
||||
failonerror="true">
|
||||
<arg line="./copynativelibs.sh" />
|
||||
</exec>
|
||||
|
||||
<!-- move the output directory to the 'final' one -->
|
||||
<move todir="${project.build.directory}/${final.dir.name}">
|
||||
<fileset dir="${project.build.directory}/${project.build.finalName}" />
|
||||
</move>
|
||||
|
||||
<!-- Using Unix tar to preserve symlinks when building final tarball -->
|
||||
<!-- This puts the tarball in the parent directory, so we don't need to move it later -->
|
||||
<exec executable="tar" failonerror="yes"
|
||||
dir="${project.build.directory}">
|
||||
<arg value="czf" />
|
||||
<arg value="${basedir}/../target/${final.dir.name}.tar.gz" />
|
||||
<arg value="${final.dir.name}" />
|
||||
</exec>
|
||||
</target>
|
||||
</configuration>
|
||||
<goals>
|
||||
<goal>run</goal>
|
||||
</goals>
|
||||
</execution>
|
||||
</executions>
|
||||
</plugin>
|
||||
</plugins>
|
||||
</build>
|
||||
|
||||
<dependencies>
|
||||
<dependency>
|
||||
<artifactId>hbase-server</artifactId>
|
||||
<groupId>org.apache.hbase</groupId>
|
||||
<scope>compile</scope>
|
||||
</dependency>
|
||||
<!-- This should be added back in when maven fixes intra-project dependencies -->
|
||||
<!-- See http://jira.codehaus.org/browse/MNG-2045 and http://jira.codehaus.org/browse/MNG-3559 -->
|
||||
<!-- <dependency>
|
||||
<artifactId>hbase-core</artifactId>
|
||||
<groupId>org.apache.hbase</groupId>
|
||||
<type>test-jar</type>
|
||||
<scope>runtime</scope>
|
||||
</dependency> -->
|
||||
</dependencies>
|
||||
|
||||
<profiles>
|
||||
<!-- Building packages -->
|
||||
<profile>
|
||||
<id>rpm</id>
|
||||
<build>
|
||||
<plugins>
|
||||
<plugin>
|
||||
<artifactId>maven-antrun-plugin</artifactId>
|
||||
<version>1.6</version>
|
||||
<executions>
|
||||
<execution>
|
||||
<id>build-rpm</id>
|
||||
<phase>package</phase>
|
||||
<configuration>
|
||||
<target>
|
||||
<ant antfile="${basedir}/src/packages/build.xml">
|
||||
<target name="package-rpm" />
|
||||
<target name="package-conf-pseudo-rpm" />
|
||||
</ant>
|
||||
</target>
|
||||
</configuration>
|
||||
<goals>
|
||||
<goal>run</goal>
|
||||
</goals>
|
||||
</execution>
|
||||
</executions>
|
||||
</plugin>
|
||||
</plugins>
|
||||
</build>
|
||||
</profile>
|
||||
<profile>
|
||||
<id>deb</id>
|
||||
<build>
|
||||
<plugins>
|
||||
<plugin>
|
||||
<artifactId>maven-antrun-plugin</artifactId>
|
||||
<version>1.6</version>
|
||||
<executions>
|
||||
<execution>
|
||||
<id>build-deb</id>
|
||||
<phase>package</phase>
|
||||
<configuration>
|
||||
<target>
|
||||
<property name="artifactId" value="${project.artifactId}" />
|
||||
<ant antfile="${basedir}/src/packages/build.xml">
|
||||
<target name="package-deb"/>
|
||||
<target name="package-conf-pseudo-deb"/>
|
||||
</ant>
|
||||
</target>
|
||||
</configuration>
|
||||
<goals>
|
||||
<goal>run</goal>
|
||||
</goals>
|
||||
</execution>
|
||||
</executions>
|
||||
<dependencies>
|
||||
<dependency>
|
||||
<groupId>org.vafer</groupId>
|
||||
<artifactId>jdeb</artifactId>
|
||||
<version>0.8</version>
|
||||
</dependency>
|
||||
</dependencies>
|
||||
</plugin>
|
||||
</plugins>
|
||||
</build>
|
||||
</profile>
|
||||
<!-- Special builds -->
|
||||
<!-- Including the snappy library -->
|
||||
<profile>
|
||||
<id>hadoop-snappy</id>
|
||||
<activation>
|
||||
<activeByDefault>false</activeByDefault>
|
||||
<property>
|
||||
<name>snappy</name>
|
||||
</property>
|
||||
</activation>
|
||||
<dependencies>
|
||||
<dependency>
|
||||
<groupId>org.apache.hadoop</groupId>
|
||||
<artifactId>hadoop-snappy</artifactId>
|
||||
<version>${hadoop-snappy.version}</version>
|
||||
</dependency>
|
||||
</dependencies>
|
||||
<build>
|
||||
<plugins>
|
||||
<!-- Add the snappy resources if the snappy goal is enabled -->
|
||||
<plugin>
|
||||
<artifactId>maven-antrun-plugin</artifactId>
|
||||
<executions>
|
||||
<execution>
|
||||
<phase>process-resources</phase>
|
||||
<configuration>
|
||||
<target description="Include the snappy libs as a tarball">
|
||||
<exec executable="tar" dir="${project.build.directory}/nativelib"
|
||||
failonerror="false">
|
||||
<arg value="xf" />
|
||||
<arg value="hadoop-snappy-nativelibs.tar" />
|
||||
</exec>
|
||||
</target>
|
||||
</configuration>
|
||||
<goals>
|
||||
<goal>run</goal>
|
||||
</goals>
|
||||
</execution>
|
||||
</executions>
|
||||
</plugin>
|
||||
<plugin>
|
||||
<groupId>org.apache.maven.plugins</groupId>
|
||||
<artifactId>maven-dependency-plugin</artifactId>
|
||||
<executions>
|
||||
<execution>
|
||||
<id>get-hadoop-snappy-native</id>
|
||||
<phase>generate-resources</phase>
|
||||
<goals>
|
||||
<goal>copy</goal>
|
||||
</goals>
|
||||
<configuration>
|
||||
<artifactItems>
|
||||
<artifactItem>
|
||||
<groupId>org.apache.hadoop</groupId>
|
||||
<artifactId>hadoop-snappy</artifactId>
|
||||
<version>${hadoop-snappy.version}</version>
|
||||
<classifier>${build.platform}</classifier>
|
||||
<type>tar</type>
|
||||
<overWrite>false</overWrite>
|
||||
<outputDirectory>${project.build.directory}/nativelib</outputDirectory>
|
||||
<destFileName>hadoop-snappy-nativelibs.tar</destFileName>
|
||||
</artifactItem>
|
||||
</artifactItems>
|
||||
</configuration>
|
||||
</execution>
|
||||
</executions>
|
||||
</plugin>
|
||||
</plugins>
|
||||
</build>
|
||||
</profile>
|
||||
</profiles>
|
||||
</project>
|
|
@ -0,0 +1,183 @@
|
|||
<?xml version="1.0"?>
|
||||
<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">
|
||||
<!--
|
||||
/**
|
||||
* 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.
|
||||
*/
|
||||
-->
|
||||
|
||||
<!--This 'all' id is not appended to the produced bundle because
|
||||
we do this: http://maven.apache.org/plugins/maven-assembly-plugin/faq.html#required-classifiers -->
|
||||
<id>all</id>
|
||||
<formats>
|
||||
<format>dir</format>
|
||||
</formats>
|
||||
<includeBaseDirectory>false</includeBaseDirectory>
|
||||
|
||||
<!-- Include top level text files -->
|
||||
<fileSets>
|
||||
<fileSet>
|
||||
<directory>${parent.basedir}</directory>
|
||||
<outputDirectory>/</outputDirectory>
|
||||
<includes>
|
||||
<include>*.txt</include>
|
||||
<include>pom.xml</include>
|
||||
</includes>
|
||||
</fileSet>
|
||||
|
||||
<!-- Include the top level conf directory -->
|
||||
<fileSet>
|
||||
<directory>${parent.basedir}/conf</directory>
|
||||
<outputDirectory>conf</outputDirectory>
|
||||
<fileMode>0644</fileMode>
|
||||
<directoryMode>0755</directoryMode>
|
||||
</fileSet>
|
||||
|
||||
<!-- Include top level bin directory -->
|
||||
<fileSet>
|
||||
<directory>${parent.basedir}/bin</directory>
|
||||
<outputDirectory>bin</outputDirectory>
|
||||
<fileMode>0755</fileMode>
|
||||
<directoryMode>0755</directoryMode>
|
||||
</fileSet>
|
||||
|
||||
<!-- Move the ruby code over -->
|
||||
<fileSet>
|
||||
<directory>${parent.basedir}/hbase-server/src/main/ruby</directory>
|
||||
<outputDirectory>lib/ruby</outputDirectory>
|
||||
<fileMode>0644</fileMode>
|
||||
<directoryMode>0755</directoryMode>
|
||||
</fileSet>
|
||||
|
||||
<!-- Move the webapps to the webapp dir -->
|
||||
<fileSet>
|
||||
<directory>${parent.basedir}/hbase-server/target/hbase-webapps</directory>
|
||||
<outputDirectory>hbase-webapps</outputDirectory>
|
||||
<fileMode>0644</fileMode>
|
||||
<directoryMode>0755</directoryMode>
|
||||
</fileSet>
|
||||
|
||||
<!-- Move the site to docs -->
|
||||
<fileSet>
|
||||
<directory>${parent.basedir}/hbase-server/target/site</directory>
|
||||
<outputDirectory>docs</outputDirectory>
|
||||
<fileMode>0644</fileMode>
|
||||
<directoryMode>0644</directoryMode>
|
||||
</fileSet>
|
||||
|
||||
<!-- Move update script to sbin -->
|
||||
<fileSet>
|
||||
<directory>src/packages</directory>
|
||||
<outputDirectory>sbin</outputDirectory>
|
||||
<fileMode>755</fileMode>
|
||||
<includes>
|
||||
<include>update-hbase-env.sh</include>
|
||||
</includes>
|
||||
</fileSet>
|
||||
|
||||
<!-- This is only necessary until maven fixes the intra-project dependency bug
|
||||
in maven 3.0. Until then, we have to include the test jars for sub-projects. When
|
||||
fixed, the below dependencySet stuff is sufficient for pulling in the test jars as
|
||||
well, as long as they are added as dependencies in this project. Right now, we only
|
||||
have 1 submodule to accumulate, but we can copy/paste as necessary until maven is
|
||||
fixed. -->
|
||||
<fileSet>
|
||||
<directory>${parent.basedir}/hbase-server/target/</directory>
|
||||
<outputDirectory>hbase-jars/</outputDirectory>
|
||||
<includes>
|
||||
<include>${server.test.jar}</include>
|
||||
</includes>
|
||||
<fileMode>0644</fileMode>
|
||||
</fileSet>
|
||||
</fileSets>
|
||||
|
||||
<!-- Copy in all non-hbase jars to the lib directory -->
|
||||
<dependencySets>
|
||||
<dependencySet>
|
||||
<outputDirectory>/lib</outputDirectory>
|
||||
<unpack>false</unpack>
|
||||
<scope>runtime</scope>
|
||||
<excludes>
|
||||
<exclude>org.apache.hbase:hbase-*</exclude>
|
||||
</excludes>
|
||||
<fileMode>0644</fileMode>
|
||||
<directoryMode>0644</directoryMode>
|
||||
</dependencySet>
|
||||
</dependencySets>
|
||||
|
||||
<!-- Do all the work for including the other modules -->
|
||||
<moduleSets>
|
||||
<moduleSet>
|
||||
<!-- Enable access to all projects in the current multimodule build. Eclipse
|
||||
says this is an error, but builds from the command line just fine. -->
|
||||
<useAllReactorProjects>true</useAllReactorProjects>
|
||||
<!-- This should work with more than 1 source module -->
|
||||
<!-- Now, select which projects to include in this module-set. -->
|
||||
<!-- Just add future modules here assuming the wildcare doesn't match -->
|
||||
<includes>
|
||||
<include>org.apache.hbase:hbase-*</include>
|
||||
</includes>
|
||||
<excludes>
|
||||
<exclude>org.apache.hbase:hbase-assembly</exclude>
|
||||
</excludes>
|
||||
<!-- Include all the sources in the top directory -->
|
||||
<sources>
|
||||
<fileSets>
|
||||
<fileSet>
|
||||
<excludes>
|
||||
<exclude>target/</exclude>
|
||||
<exclude>test/</exclude>
|
||||
<exclude>.classpath</exclude>
|
||||
<exclude>.project</exclude>
|
||||
<exclude>.settings/</exclude>
|
||||
</excludes>
|
||||
</fileSet>
|
||||
</fileSets>
|
||||
</sources>
|
||||
<!-- Binaries for the dependencies also go in the hbase-jars directory -->
|
||||
<binaries>
|
||||
<outputDirectory>hbase-jars/</outputDirectory>
|
||||
<unpack>false</unpack>
|
||||
</binaries>
|
||||
</moduleSet>
|
||||
<!-- Special module just for assembly -->
|
||||
<moduleSet>
|
||||
<useAllReactorProjects>true</useAllReactorProjects>
|
||||
<includes>
|
||||
<include>org.apache.hbase:hbase-assembly</include>
|
||||
</includes>
|
||||
<!-- Include all the sources in the top directory -->
|
||||
<sources>
|
||||
<fileSets>
|
||||
<fileSet>
|
||||
<excludes>
|
||||
<!-- Add new modules here -->
|
||||
<exclude>hbase-server-${project.version}.jar</exclude>
|
||||
<exclude>target/</exclude>
|
||||
<exclude>test/</exclude>
|
||||
<exclude>.classpath</exclude>
|
||||
<exclude>.project</exclude>
|
||||
<exclude>.settings/</exclude>
|
||||
</excludes>
|
||||
</fileSet>
|
||||
</fileSets>
|
||||
</sources>
|
||||
</moduleSet>
|
||||
</moduleSets>
|
||||
</assembly>
|
|
@ -0,0 +1,599 @@
|
|||
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||||
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
|
||||
<!--
|
||||
/**
|
||||
* 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.
|
||||
*/
|
||||
-->
|
||||
<modelVersion>4.0.0</modelVersion>
|
||||
|
||||
<parent>
|
||||
<artifactId>hbase</artifactId>
|
||||
<groupId>org.apache.hbase</groupId>
|
||||
<version>0.95-SNAPSHOT</version>
|
||||
<relativePath>..</relativePath>
|
||||
</parent>
|
||||
|
||||
<artifactId>hbase-server</artifactId>
|
||||
<name>HBase - Server</name>
|
||||
<description>Main functionality for HBase</description>
|
||||
|
||||
<build>
|
||||
<plugins>
|
||||
<plugin>
|
||||
<groupId>org.apache.avro</groupId>
|
||||
<artifactId>avro-maven-plugin</artifactId>
|
||||
<executions>
|
||||
<execution>
|
||||
<id>generate-avro-sources</id>
|
||||
<phase>generate-sources</phase>
|
||||
<goals>
|
||||
<goal>schema</goal>
|
||||
<goal>protocol</goal>
|
||||
</goals>
|
||||
</execution>
|
||||
</executions>
|
||||
<configuration>
|
||||
<outputDirectory>${project.build.directory}/generated-sources/java</outputDirectory>
|
||||
</configuration>
|
||||
</plugin>
|
||||
|
||||
<!-- 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>
|
||||
<groupId>org.apache.maven.plugins</groupId>
|
||||
<artifactId>maven-jar-plugin</artifactId>
|
||||
<configuration>
|
||||
<archive>
|
||||
<manifest>
|
||||
<mainClass>org/apache/hadoop/hbase/mapreduce/Driver</mainClass>
|
||||
</manifest>
|
||||
</archive>
|
||||
<!-- Exclude these 2 packages, because their dependency _binary_ files
|
||||
include the sources, and Maven 2.2 appears to add them to the sources to compile,
|
||||
weird -->
|
||||
<excludes>
|
||||
<exclude>org/apache/jute/**</exclude>
|
||||
<exclude>org/apache/zookeeper/**</exclude>
|
||||
<exclude>**/*.jsp</exclude>
|
||||
<exclude>hbase-site.xml</exclude>
|
||||
<exclude>log4j.properties</exclude>
|
||||
<exclude>mapred-queues.xml</exclude>
|
||||
</excludes>
|
||||
</configuration>
|
||||
</plugin>
|
||||
<!-- Make a jar and put the sources in the jar -->
|
||||
<plugin>
|
||||
<groupId>org.apache.maven.plugins</groupId>
|
||||
<artifactId>maven-source-plugin</artifactId>
|
||||
</plugin>
|
||||
|
||||
<!-- General ant tasks, bound to different build phases -->
|
||||
<plugin>
|
||||
<artifactId>maven-antrun-plugin</artifactId>
|
||||
<executions>
|
||||
<!-- Generate web app sources -->
|
||||
<execution>
|
||||
<id>generate</id>
|
||||
<phase>generate-sources</phase>
|
||||
<configuration>
|
||||
<target>
|
||||
<property name="build.webapps"
|
||||
location="${project.build.directory}/hbase-webapps" />
|
||||
<property name="src.webapps"
|
||||
location="${basedir}/src/main/resources/hbase-webapps" />
|
||||
<property name="generated.sources"
|
||||
location="${project.build.directory}/generated-sources" />
|
||||
|
||||
<mkdir dir="${build.webapps}" />
|
||||
<copy todir="${build.webapps}">
|
||||
<fileset dir="${src.webapps}">
|
||||
<exclude name="**/*.jsp" />
|
||||
<exclude name="**/.*" />
|
||||
<exclude name="**/*~" />
|
||||
</fileset>
|
||||
</copy>
|
||||
|
||||
<!--The compile.classpath is passed in by maven -->
|
||||
<taskdef classname="org.apache.jasper.JspC" name="jspcompiler"
|
||||
classpathref="maven.compile.classpath" />
|
||||
|
||||
<mkdir dir="${build.webapps}/master/WEB-INF" />
|
||||
<jspcompiler uriroot="${src.webapps}/master"
|
||||
outputdir="${generated.sources}/java" package="org.apache.hadoop.hbase.generated.master"
|
||||
webxml="${build.webapps}/master/WEB-INF/web.xml" />
|
||||
|
||||
<mkdir dir="${build.webapps}/regionserver/WEB-INF" />
|
||||
<jspcompiler uriroot="${src.webapps}/regionserver"
|
||||
outputdir="${generated.sources}/java" package="org.apache.hadoop.hbase.generated.regionserver"
|
||||
webxml="${build.webapps}/regionserver/WEB-INF/web.xml" />
|
||||
|
||||
<exec executable="sh">
|
||||
<arg
|
||||
line="${basedir}/src/saveVersion.sh ${project.version} ${generated.sources}/java" />
|
||||
</exec>
|
||||
</target>
|
||||
</configuration>
|
||||
<goals>
|
||||
<goal>run</goal>
|
||||
</goals>
|
||||
</execution>
|
||||
<!-- Update the default config with a version-->
|
||||
<execution>
|
||||
<phase>process-resources</phase>
|
||||
<configuration>
|
||||
<target>
|
||||
<replace file="${project.build.outputDirectory}/hbase-default.xml"
|
||||
token="@@@VERSION@@@" value="${project.version}" />
|
||||
<mkdir dir="${project.build.directory}/nativelib" />
|
||||
</target>
|
||||
</configuration>
|
||||
<goals>
|
||||
<goal>run</goal>
|
||||
</goals>
|
||||
</execution>
|
||||
</executions>
|
||||
</plugin>
|
||||
<plugin>
|
||||
<groupId>org.codehaus.mojo</groupId>
|
||||
<artifactId>build-helper-maven-plugin</artifactId>
|
||||
<executions>
|
||||
<!-- Add the generated sources -->
|
||||
<execution>
|
||||
<id>jspcSource-packageInfo-Avro-source</id>
|
||||
<phase>generate-sources</phase>
|
||||
<goals>
|
||||
<goal>add-source</goal>
|
||||
</goals>
|
||||
<configuration>
|
||||
<sources>
|
||||
<source>${project.build.directory}/generated-jamon</source>
|
||||
<source>${project.build.directory}/generated-sources/java</source>
|
||||
</sources>
|
||||
</configuration>
|
||||
</execution>
|
||||
<!-- Add hbase-site to the test resources -->
|
||||
<execution>
|
||||
<id>add-test-resource</id>
|
||||
<goals>
|
||||
<goal>add-test-resource</goal>
|
||||
</goals>
|
||||
<configuration>
|
||||
<resources>
|
||||
<resource>
|
||||
<directory>src/test/resources</directory>
|
||||
<includes>
|
||||
<include>hbase-site.xml</include>
|
||||
</includes>
|
||||
</resource>
|
||||
</resources>
|
||||
</configuration>
|
||||
</execution>
|
||||
</executions>
|
||||
</plugin>
|
||||
<plugin>
|
||||
<groupId>org.jamon</groupId>
|
||||
<artifactId>jamon-maven-plugin</artifactId>
|
||||
<executions>
|
||||
<execution>
|
||||
<phase>generate-sources</phase>
|
||||
<goals>
|
||||
<goal>translate</goal>
|
||||
</goals>
|
||||
<configuration>
|
||||
<templateSourceDir>src/main/jamon</templateSourceDir>
|
||||
<templateOutputDir>target/generated-jamon</templateOutputDir>
|
||||
</configuration>
|
||||
</execution>
|
||||
</executions>
|
||||
</plugin>
|
||||
<!-- General plugins -->
|
||||
<plugin>
|
||||
<groupId>org.apache.maven.plugins</groupId>
|
||||
<artifactId>maven-eclipse-plugin</artifactId>
|
||||
<configuration>
|
||||
<additionalProjectnatures>
|
||||
<projectnature>org.jamon.project.jamonnature</projectnature>
|
||||
</additionalProjectnatures>
|
||||
<buildcommands>
|
||||
<buildcommand>org.jamon.project.templateBuilder</buildcommand>
|
||||
<buildcommand>org.eclipse.jdt.core.javabuilder</buildcommand>
|
||||
<buildcommand>org.jamon.project.markerUpdater</buildcommand>
|
||||
</buildcommands>
|
||||
<additionalConfig>
|
||||
<file>
|
||||
<name>.settings/org.jamon.prefs</name>
|
||||
<content># now
|
||||
eclipse.preferences.version=1
|
||||
templateSourceDir=src/main/jamon
|
||||
templateOutputDir=target/generated-jamon
|
||||
</content>
|
||||
</file>
|
||||
</additionalConfig>
|
||||
</configuration>
|
||||
</plugin>
|
||||
<!-- Run findbugs -->
|
||||
<plugin>
|
||||
<groupId>org.codehaus.mojo</groupId>
|
||||
<artifactId>findbugs-maven-plugin</artifactId>
|
||||
</plugin>
|
||||
|
||||
<!-- Testing plugins -->
|
||||
<plugin>
|
||||
<artifactId>maven-surefire-plugin</artifactId>
|
||||
</plugin>
|
||||
</plugins>
|
||||
|
||||
<!-- General Resources -->
|
||||
<pluginManagement>
|
||||
<plugins>
|
||||
<!--This plugin's configuration is used to store Eclipse m2e settings only. It has no influence on
|
||||
the Maven build itself and needs to be kept in plugin management, not in the actual plugins. -->
|
||||
<plugin>
|
||||
<groupId>org.eclipse.m2e</groupId>
|
||||
<artifactId>lifecycle-mapping</artifactId>
|
||||
<version>1.0.0</version>
|
||||
<configuration>
|
||||
<lifecycleMappingMetadata>
|
||||
<pluginExecutions>
|
||||
<pluginExecution>
|
||||
<pluginExecutionFilter>
|
||||
<groupId>org.jamon</groupId>
|
||||
<artifactId>jamon-maven-plugin</artifactId>
|
||||
<versionRange>[2.3.4,)</versionRange>
|
||||
<goals>
|
||||
<goal>translate</goal>
|
||||
</goals>
|
||||
</pluginExecutionFilter>
|
||||
<action>
|
||||
<ignore></ignore>
|
||||
</action>
|
||||
</pluginExecution>
|
||||
<pluginExecution>
|
||||
<pluginExecutionFilter>
|
||||
<groupId>org.apache.maven.plugins</groupId>
|
||||
<artifactId>maven-antrun-plugin</artifactId>
|
||||
<versionRange>[1.6,)</versionRange>
|
||||
<goals>
|
||||
<goal>run</goal>
|
||||
</goals>
|
||||
</pluginExecutionFilter>
|
||||
<action>
|
||||
<ignore></ignore>
|
||||
</action>
|
||||
</pluginExecution>
|
||||
<pluginExecution>
|
||||
<pluginExecutionFilter>
|
||||
<groupId>org.apache.avro</groupId>
|
||||
<artifactId>avro-maven-plugin</artifactId>
|
||||
<versionRange>[1.5.3,)</versionRange>
|
||||
<goals>
|
||||
<goal>schema</goal>
|
||||
<goal>protocol</goal>
|
||||
</goals>
|
||||
</pluginExecutionFilter>
|
||||
<action>
|
||||
<ignore></ignore>
|
||||
</action>
|
||||
</pluginExecution>
|
||||
</pluginExecutions>
|
||||
</lifecycleMappingMetadata>
|
||||
</configuration>
|
||||
</plugin>
|
||||
</plugins>
|
||||
</pluginManagement>
|
||||
</build>
|
||||
|
||||
<dependencies>
|
||||
<!-- General dependencies -->
|
||||
<dependency>
|
||||
<groupId>com.google.guava</groupId>
|
||||
<artifactId>guava</artifactId>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>commons-cli</groupId>
|
||||
<artifactId>commons-cli</artifactId>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>commons-configuration</groupId>
|
||||
<artifactId>commons-configuration</artifactId>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>com.github.stephenc.high-scale-lib</groupId>
|
||||
<artifactId>high-scale-lib</artifactId>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>commons-codec</groupId>
|
||||
<artifactId>commons-codec</artifactId>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>commons-httpclient</groupId>
|
||||
<artifactId>commons-httpclient</artifactId>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>commons-io</groupId>
|
||||
<artifactId>commons-io</artifactId>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>commons-lang</groupId>
|
||||
<artifactId>commons-lang</artifactId>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>commons-logging</groupId>
|
||||
<artifactId>commons-logging</artifactId>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>log4j</groupId>
|
||||
<artifactId>log4j</artifactId>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.apache.avro</groupId>
|
||||
<artifactId>avro</artifactId>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.apache.avro</groupId>
|
||||
<artifactId>avro-ipc</artifactId>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.apache.zookeeper</groupId>
|
||||
<artifactId>zookeeper</artifactId>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.apache.thrift</groupId>
|
||||
<artifactId>libthrift</artifactId>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.jruby</groupId>
|
||||
<artifactId>jruby-complete</artifactId>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.mortbay.jetty</groupId>
|
||||
<artifactId>jetty</artifactId>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.mortbay.jetty</groupId>
|
||||
<artifactId>jetty-util</artifactId>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.mortbay.jetty</groupId>
|
||||
<artifactId>jsp-2.1</artifactId>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.mortbay.jetty</groupId>
|
||||
<artifactId>jsp-api-2.1</artifactId>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.mortbay.jetty</groupId>
|
||||
<artifactId>servlet-api-2.5</artifactId>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.codehaus.jackson</groupId>
|
||||
<artifactId>jackson-core-asl</artifactId>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.codehaus.jackson</groupId>
|
||||
<artifactId>jackson-mapper-asl</artifactId>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.codehaus.jackson</groupId>
|
||||
<artifactId>jackson-jaxrs</artifactId>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.codehaus.jackson</groupId>
|
||||
<artifactId>jackson-xc</artifactId>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.slf4j</groupId>
|
||||
<artifactId>slf4j-api</artifactId>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.slf4j</groupId>
|
||||
<artifactId>slf4j-log4j12</artifactId>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>tomcat</groupId>
|
||||
<artifactId>jasper-compiler</artifactId>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>tomcat</groupId>
|
||||
<artifactId>jasper-runtime</artifactId>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.jamon</groupId>
|
||||
<artifactId>jamon-runtime</artifactId>
|
||||
</dependency>
|
||||
|
||||
<!-- REST dependencies -->
|
||||
<dependency>
|
||||
<groupId>com.google.protobuf</groupId>
|
||||
<artifactId>protobuf-java</artifactId>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>com.sun.jersey</groupId>
|
||||
<artifactId>jersey-core</artifactId>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>com.sun.jersey</groupId>
|
||||
<artifactId>jersey-json</artifactId>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>com.sun.jersey</groupId>
|
||||
<artifactId>jersey-server</artifactId>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>javax.xml.bind</groupId>
|
||||
<artifactId>jaxb-api</artifactId>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>stax</groupId>
|
||||
<artifactId>stax-api</artifactId>
|
||||
</dependency>
|
||||
</dependencies>
|
||||
|
||||
<profiles>
|
||||
|
||||
<!-- Special builds -->
|
||||
<profile>
|
||||
<id>hadoop-snappy</id>
|
||||
<activation>
|
||||
<activeByDefault>false</activeByDefault>
|
||||
<property>
|
||||
<name>snappy</name>
|
||||
</property>
|
||||
</activation>
|
||||
<dependencies>
|
||||
<dependency>
|
||||
<groupId>org.apache.hadoop</groupId>
|
||||
<artifactId>hadoop-snappy</artifactId>
|
||||
<version>${hadoop-snappy.version}</version>
|
||||
</dependency>
|
||||
</dependencies>
|
||||
</profile>
|
||||
|
||||
<!-- Profiles for building against different hadoop versions -->
|
||||
<!-- There are a lot of common dependencies used here, should investigate
|
||||
if we can combine these profiles somehow -->
|
||||
|
||||
<!-- profile against Hadoop 1.0.x: This is the default. It has to have the same
|
||||
activation property as the parent Hadoop 1.0.x profile to make sure it gets run at
|
||||
the same time. -->
|
||||
<profile>
|
||||
<id>hadoop-1.0</id>
|
||||
<activation>
|
||||
<property>
|
||||
<name>!hadoop.profile</name>
|
||||
</property>
|
||||
</activation>
|
||||
<dependencies>
|
||||
<dependency>
|
||||
<groupId>org.apache.hadoop</groupId>
|
||||
<artifactId>hadoop-core</artifactId>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.apache.hadoop</groupId>
|
||||
<artifactId>hadoop-test</artifactId>
|
||||
</dependency>
|
||||
</dependencies>
|
||||
</profile>
|
||||
|
||||
<!--
|
||||
profile for building against Hadoop 0.23.0. Activate using:
|
||||
mvn -Dhadoop.profile=23
|
||||
-->
|
||||
<profile>
|
||||
<id>hadoop-2.0</id>
|
||||
<activation>
|
||||
<property>
|
||||
<name>hadoop.profile</name>
|
||||
<value>2.0</value>
|
||||
</property>
|
||||
</activation>
|
||||
<dependencies>
|
||||
<dependency>
|
||||
<groupId>org.apache.hadoop</groupId>
|
||||
<artifactId>hadoop-client</artifactId>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.apache.hadoop</groupId>
|
||||
<artifactId>hadoop-annotations</artifactId>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.apache.hadoop</groupId>
|
||||
<artifactId>hadoop-minicluster</artifactId>
|
||||
</dependency>
|
||||
</dependencies>
|
||||
<build>
|
||||
<plugins>
|
||||
<plugin>
|
||||
<artifactId>maven-dependency-plugin</artifactId>
|
||||
<executions>
|
||||
<execution>
|
||||
<id>create-mrapp-generated-classpath</id>
|
||||
<phase>generate-test-resources</phase>
|
||||
<goals>
|
||||
<goal>build-classpath</goal>
|
||||
</goals>
|
||||
<configuration>
|
||||
<!-- needed to run the unit test for DS to generate
|
||||
the required classpath that is required in the env
|
||||
of the launch container in the mini mr/yarn cluster
|
||||
-->
|
||||
<outputFile>${project.build.directory}/test-classes/mrapp-generated-classpath</outputFile>
|
||||
</configuration>
|
||||
</execution>
|
||||
</executions>
|
||||
</plugin>
|
||||
</plugins>
|
||||
</build>
|
||||
</profile>
|
||||
|
||||
<!--
|
||||
profile for building against Hadoop 3.0.x. Activate using:
|
||||
mvn -Dhadoop.profile=3.0
|
||||
-->
|
||||
<profile>
|
||||
<id>hadoop-3.0</id>
|
||||
<activation>
|
||||
<property>
|
||||
<name>hadoop.profile</name>
|
||||
<value>3.0</value>
|
||||
</property>
|
||||
</activation>
|
||||
<properties>
|
||||
<hadoop.version>3.0-SNAPSHOT</hadoop.version>
|
||||
</properties>
|
||||
<dependencies>
|
||||
<dependency>
|
||||
<groupId>org.apache.hadoop</groupId>
|
||||
<artifactId>hadoop-common</artifactId>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.apache.hadoop</groupId>
|
||||
<artifactId>hadoop-annotations</artifactId>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.apache.hadoop</groupId>
|
||||
<artifactId>hadoop-minicluster</artifactId>
|
||||
</dependency>
|
||||
</dependencies>
|
||||
<build>
|
||||
<plugins>
|
||||
<plugin>
|
||||
<artifactId>maven-dependency-plugin</artifactId>
|
||||
<executions>
|
||||
<execution>
|
||||
<id>create-mrapp-generated-classpath</id>
|
||||
<phase>generate-test-resources</phase>
|
||||
<goals>
|
||||
<goal>build-classpath</goal>
|
||||
</goals>
|
||||
<configuration>
|
||||
<!-- needed to run the unit test for DS to generate
|
||||
the required classpath that is required in the env
|
||||
of the launch container in the mini mr/yarn cluster
|
||||
-->
|
||||
<outputFile>${project.build.directory}/test-classes/mrapp-generated-classpath</outputFile>
|
||||
</configuration>
|
||||
</execution>
|
||||
</executions>
|
||||
</plugin>
|
||||
</plugins>
|
||||
</build>
|
||||
</profile>
|
||||
</profiles>
|
||||
</project>
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue