2 <project xmlns="https://maven.apache.org/POM/4.0.0" xmlns:xsi="https://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="https://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd">
5 * Licensed to the Apache Software Foundation (ASF) under one
6 * or more contributor license agreements. See the NOTICE file
7 * distributed with this work for additional information
8 * regarding copyright ownership. The ASF licenses this file
9 * to you under the Apache License, Version 2.0 (the
10 * "License"); you may not use this file except in compliance
11 * with the License. You may obtain a copy of the License at
13 * http://www.apache.org/licenses/LICENSE-2.0
15 * Unless required by applicable law or agreed to in writing, software
16 * distributed under the License is distributed on an "AS IS" BASIS,
17 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
18 * See the License for the specific language governing permissions and
19 * limitations under the License.
22 <modelVersion>4.0.0</modelVersion>
24 <artifactId>hbase-build-configuration</artifactId>
25 <groupId>org.apache.hbase</groupId>
26 <version>2.4.1</version>
27 <relativePath>../hbase-build-configuration</relativePath>
30 <artifactId>hbase-common</artifactId>
31 <name>Apache HBase - Common</name>
32 <description>Common functionality for HBase</description>
37 <directory>src/main/resources/</directory>
39 <include>hbase-default.xml</include>
45 <directory>src/test/resources/META-INF/</directory>
46 <targetPath>META-INF/</targetPath>
48 <include>NOTICE</include>
50 <filtering>true</filtering>
53 <directory>src/test/resources</directory>
55 <include>**/**</include>
61 <groupId>org.apache.maven.plugins</groupId>
62 <artifactId>maven-remote-resources-plugin</artifactId>
65 <!--Make it so assembly:single does nothing in here-->
66 <artifactId>maven-assembly-plugin</artifactId>
68 <skipAssembly>true</skipAssembly>
72 <artifactId>maven-antrun-plugin</artifactId>
75 <phase>process-resources</phase>
78 <replace file="${project.build.outputDirectory}/hbase-default.xml"
79 token="@@@VERSION@@@" value="${project.version}" />
86 <!-- Generate web app sources -->
88 <id>generate-Version-information</id>
89 <phase>generate-sources</phase>
92 <property name="generated.sources" location="${project.build.directory}/generated-sources"/>
94 <exec executable="bash" failonerror="true">
95 <arg line="${basedir}/src/saveVersion.sh ${project.version} ${generated.sources}/java"/>
106 <groupId>org.codehaus.mojo</groupId>
107 <artifactId>build-helper-maven-plugin</artifactId>
109 <!-- Add the generated sources -->
111 <id>versionInfo-source</id>
112 <phase>generate-sources</phase>
114 <goal>add-source</goal>
118 <source>${project.build.directory}/generated-sources/java</source>
124 <!-- Make a jar and put the sources in the jar -->
126 <groupId>org.apache.maven.plugins</groupId>
127 <artifactId>maven-source-plugin</artifactId>
130 <exclude>hbase-default.xml</exclude>
135 <groupId>net.revelc.code</groupId>
136 <artifactId>warbucks-maven-plugin</artifactId>
143 <groupId>org.apache.hbase</groupId>
144 <artifactId>hbase-annotations</artifactId>
145 <type>test-jar</type>
149 <groupId>org.apache.hbase</groupId>
150 <artifactId>hbase-logging</artifactId>
153 <groupId>org.apache.hbase</groupId>
154 <artifactId>hbase-logging</artifactId>
155 <type>test-jar</type>
159 <groupId>org.apache.hbase.thirdparty</groupId>
160 <artifactId>hbase-shaded-miscellaneous</artifactId>
163 <groupId>org.apache.hbase.thirdparty</groupId>
164 <artifactId>hbase-shaded-gson</artifactId>
167 <groupId>org.apache.hbase.thirdparty</groupId>
168 <artifactId>hbase-shaded-netty</artifactId>
171 <groupId>org.slf4j</groupId>
172 <artifactId>slf4j-api</artifactId>
175 <groupId>commons-codec</groupId>
176 <artifactId>commons-codec</artifactId>
177 <scope>compile</scope>
180 <groupId>org.apache.commons</groupId>
181 <artifactId>commons-lang3</artifactId>
182 <scope>compile</scope>
185 <groupId>commons-io</groupId>
186 <artifactId>commons-io</artifactId>
187 <scope>compile</scope>
190 <groupId>com.google.protobuf</groupId>
191 <artifactId>protobuf-java</artifactId>
193 <!-- tracing Dependencies -->
195 <groupId>org.apache.htrace</groupId>
196 <artifactId>htrace-core4</artifactId>
199 <groupId>org.apache.commons</groupId>
200 <artifactId>commons-crypto</artifactId>
203 <groupId>junit</groupId>
204 <artifactId>junit</artifactId>
208 <groupId>com.github.stephenc.findbugs</groupId>
209 <artifactId>findbugs-annotations</artifactId>
210 <scope>compile</scope>
211 <optional>true</optional>
214 <groupId>org.hamcrest</groupId>
215 <artifactId>hamcrest-library</artifactId>
219 <groupId>org.mockito</groupId>
220 <artifactId>mockito-core</artifactId>
224 <groupId>org.slf4j</groupId>
225 <artifactId>jcl-over-slf4j</artifactId>
229 <groupId>org.slf4j</groupId>
230 <artifactId>jul-to-slf4j</artifactId>
234 <groupId>org.slf4j</groupId>
235 <artifactId>slf4j-log4j12</artifactId>
239 <groupId>log4j</groupId>
240 <artifactId>log4j</artifactId>
244 <groupId>org.apache.kerby</groupId>
245 <artifactId>kerb-simplekdc</artifactId>
251 <!-- Needs to make the profile in apache parent pom -->
253 <id>apache-release</id>
257 <groupId>org.apache.maven.plugins</groupId>
258 <artifactId>maven-resources-plugin</artifactId>
261 <id>license-javadocs</id>
262 <phase>prepare-package</phase>
264 <goal>copy-resources</goal>
267 <outputDirectory>${project.build.directory}/apidocs</outputDirectory>
270 <directory>src/main/javadoc/META-INF/</directory>
271 <targetPath>META-INF/</targetPath>
273 <include>NOTICE</include>
275 <filtering>true</filtering>
285 <!-- Skip the tests in this module -->
287 <id>skipCommonTests</id>
290 <name>skipCommonTests</name>
294 <surefire.skipFirstPart>true</surefire.skipFirstPart>
295 <surefire.skipSecondPart>true</surefire.skipSecondPart>
300 <!-- profile for building against Hadoop 2.x. This is the default -->
305 <!--Below formatting for dev-support/generate-hadoopX-poms.sh-->
306 <!--h2--><name>!hadoop.profile</name>
311 <groupId>org.apache.hadoop</groupId>
312 <artifactId>hadoop-common</artifactId>
313 <!--FYI This pulls in hadoop's guava. Its needed for Configuration
320 <artifactId>maven-dependency-plugin</artifactId>
323 <id>create-mrapp-generated-classpath</id>
324 <phase>generate-test-resources</phase>
326 <goal>build-classpath</goal>
329 <!-- needed to run the unit test for DS to generate
330 the required classpath that is required in the env
331 of the launch container in the mini mr/yarn cluster
333 <outputFile>${project.build.directory}/test-classes/mrapp-generated-classpath</outputFile>
343 profile for building against Hadoop 3.0.x. Activate using:
344 mvn -Dhadoop.profile=3.0
350 <name>hadoop.profile</name>
356 <groupId>org.apache.hadoop</groupId>
357 <artifactId>hadoop-common</artifactId>
363 <artifactId>maven-dependency-plugin</artifactId>
366 <id>create-mrapp-generated-classpath</id>
367 <phase>generate-test-resources</phase>
369 <goal>build-classpath</goal>
372 <!-- needed to run the unit test for DS to generate
373 the required classpath that is required in the env
374 of the launch container in the mini mr/yarn cluster
376 <outputFile>${project.build.directory}/test-classes/mrapp-generated-classpath</outputFile>
385 <id>eclipse-specific</id>
388 <name>m2e.version</name>
394 <!--This plugin's configuration is used to store Eclipse m2e settings
395 only. It has no influence on the Maven build itself. -->
397 <groupId>org.eclipse.m2e</groupId>
398 <artifactId>lifecycle-mapping</artifactId>
400 <lifecycleMappingMetadata>
403 <pluginExecutionFilter>
404 <groupId>org.apache.maven.plugins</groupId>
405 <artifactId>maven-antrun-plugin</artifactId>
406 <versionRange>[${maven.antrun.version}]</versionRange>
410 </pluginExecutionFilter>
416 <pluginExecutionFilter>
417 <groupId>org.apache.maven.plugins</groupId>
418 <artifactId>maven-dependency-plugin</artifactId>
419 <versionRange>[2.8,)</versionRange>
421 <goal>build-classpath</goal>
423 </pluginExecutionFilter>
429 </lifecycleMappingMetadata>