HBASE-23868 : Replace usages of HColumnDescriptor(byte [] familyName)… (#1222)
[hbase.git] / hbase-common / pom.xml
blob55395630bd772f22bd851f7217af598d88805a38
1 <?xml version="1.0"?>
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">
3 <!--
4 /**
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
12  *
13  *     http://www.apache.org/licenses/LICENSE-2.0
14  *
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.
20  */
21 -->
22   <modelVersion>4.0.0</modelVersion>
23   <parent>
24     <artifactId>hbase-build-configuration</artifactId>
25     <groupId>org.apache.hbase</groupId>
26     <version>3.0.0-SNAPSHOT</version>
27     <relativePath>../hbase-build-configuration</relativePath>
28   </parent>
30   <artifactId>hbase-common</artifactId>
31   <name>Apache HBase - Common</name>
32   <description>Common functionality for HBase</description>
33 <!--REMOVE-->
35   <build>
36     <resources>
37       <resource>
38           <directory>src/main/resources/</directory>
39           <includes>
40               <include>hbase-default.xml</include>
41           </includes>
42       </resource>
43     </resources>
44     <testResources>
45       <testResource>
46         <directory>src/test/resources/META-INF/</directory>
47         <targetPath>META-INF/</targetPath>
48         <includes>
49           <include>NOTICE</include>
50         </includes>
51         <filtering>true</filtering>
52       </testResource>
53       <testResource>
54         <directory>src/test/resources</directory>
55         <includes>
56           <include>**/**</include>
57         </includes>
58       </testResource>
59     </testResources>
60     <plugins>
61       <plugin>
62         <groupId>org.apache.maven.plugins</groupId>
63         <artifactId>maven-remote-resources-plugin</artifactId>
64       </plugin>
65       <plugin>
66         <!--Make it so assembly:single does nothing in here-->
67         <artifactId>maven-assembly-plugin</artifactId>
68         <configuration>
69           <skipAssembly>true</skipAssembly>
70         </configuration>
71       </plugin>
72         <plugin>
73             <artifactId>maven-antrun-plugin</artifactId>
74             <executions>
75           <execution>
76             <phase>process-resources</phase>
77             <configuration>
78               <target>
79                 <replace file="${project.build.outputDirectory}/hbase-default.xml"
80                   token="@@@VERSION@@@" value="${project.version}" />
81               </target>
82             </configuration>
83             <goals>
84               <goal>run</goal>
85             </goals>
86           </execution>
87                 <!-- Generate web app sources -->
88                 <execution>
89                     <id>generate-Version-information</id>
90                     <phase>generate-sources</phase>
91                     <configuration>
92                         <target>
93                             <property name="generated.sources" location="${project.build.directory}/generated-sources"/>
95                             <exec executable="bash" failonerror="true">
96                                 <arg line="${basedir}/src/saveVersion.sh ${project.version} ${generated.sources}/java"/>
97                             </exec>
98                         </target>
99                     </configuration>
100                     <goals>
101                         <goal>run</goal>
102                     </goals>
103                 </execution>
104             </executions>
105         </plugin>
106         <plugin>
107             <groupId>org.codehaus.mojo</groupId>
108             <artifactId>build-helper-maven-plugin</artifactId>
109             <executions>
110                 <!-- Add the generated sources -->
111                 <execution>
112                     <id>versionInfo-source</id>
113                     <phase>generate-sources</phase>
114                     <goals>
115                         <goal>add-source</goal>
116                     </goals>
117                     <configuration>
118                         <sources>
119                             <source>${project.build.directory}/generated-sources/java</source>
120                         </sources>
121                     </configuration>
122                 </execution>
123             </executions>
124         </plugin>
125         <!-- Make a jar and put the sources in the jar -->
126         <plugin>
127           <groupId>org.apache.maven.plugins</groupId>
128           <artifactId>maven-source-plugin</artifactId>
129           <configuration>
130             <excludes>
131               <exclude>hbase-default.xml</exclude>
132             </excludes>
133           </configuration>
134         </plugin>
135       <plugin>
136         <groupId>net.revelc.code</groupId>
137         <artifactId>warbucks-maven-plugin</artifactId>
138       </plugin>
139     </plugins>
140   </build>
142   <dependencies>
143     <dependency>
144       <groupId>org.apache.hbase</groupId>
145       <artifactId>hbase-annotations</artifactId>
146       <type>test-jar</type>
147       <scope>test</scope>
148     </dependency>
149     <dependency>
150       <groupId>org.apache.hbase.thirdparty</groupId>
151       <artifactId>hbase-shaded-miscellaneous</artifactId>
152     </dependency>
153     <dependency>
154       <groupId>org.apache.hbase.thirdparty</groupId>
155       <artifactId>hbase-shaded-gson</artifactId>
156     </dependency>
157     <dependency>
158       <groupId>org.apache.hbase.thirdparty</groupId>
159       <artifactId>hbase-shaded-netty</artifactId>
160     </dependency>
161     <dependency>
162       <groupId>org.slf4j</groupId>
163       <artifactId>slf4j-api</artifactId>
164     </dependency>
165     <dependency>
166       <groupId>commons-codec</groupId>
167       <artifactId>commons-codec</artifactId>
168       <scope>compile</scope>
169     </dependency>
170     <dependency>
171       <groupId>org.apache.commons</groupId>
172       <artifactId>commons-lang3</artifactId>
173       <scope>compile</scope>
174     </dependency>
175     <dependency>
176       <groupId>commons-io</groupId>
177       <artifactId>commons-io</artifactId>
178       <scope>compile</scope>
179     </dependency>
180     <dependency>
181       <groupId>commons-validator</groupId>
182       <artifactId>commons-validator</artifactId>
183       <scope>compile</scope>
184     </dependency>
185     <dependency>
186       <groupId>com.google.protobuf</groupId>
187       <artifactId>protobuf-java</artifactId>
188     </dependency>
189     <!-- tracing Dependencies -->
190     <dependency>
191       <groupId>org.apache.htrace</groupId>
192       <artifactId>htrace-core4</artifactId>
193     </dependency>
194     <dependency>
195       <groupId>org.apache.commons</groupId>
196       <artifactId>commons-crypto</artifactId>
197     </dependency>
198     <dependency>
199       <groupId>junit</groupId>
200       <artifactId>junit</artifactId>
201       <scope>test</scope>
202     </dependency>
203     <dependency>
204       <groupId>com.github.stephenc.findbugs</groupId>
205       <artifactId>findbugs-annotations</artifactId>
206     </dependency>
207     <dependency>
208       <groupId>org.mockito</groupId>
209       <artifactId>mockito-core</artifactId>
210       <scope>test</scope>
211     </dependency>
212     <dependency>
213       <!--For Hadoop-->
214       <groupId>log4j</groupId>
215       <artifactId>log4j</artifactId>
216     </dependency>
217   </dependencies>
219   <profiles>
220     <!-- Needs to make the profile in apache parent pom -->
221     <profile>
222       <id>apache-release</id>
223       <build>
224         <plugins>
225           <plugin>
226             <groupId>org.apache.maven.plugins</groupId>
227             <artifactId>maven-resources-plugin</artifactId>
228             <executions>
229               <execution>
230                 <id>license-javadocs</id>
231                 <phase>prepare-package</phase>
232                 <goals>
233                   <goal>copy-resources</goal>
234                 </goals>
235                 <configuration>
236                   <outputDirectory>${project.build.directory}/apidocs</outputDirectory>
237                   <resources>
238                     <resource>
239                       <directory>src/main/javadoc/META-INF/</directory>
240                       <targetPath>META-INF/</targetPath>
241                       <includes>
242                         <include>NOTICE</include>
243                       </includes>
244                       <filtering>true</filtering>
245                     </resource>
246                   </resources>
247                 </configuration>
248               </execution>
249             </executions>
250           </plugin>
251         </plugins>
252       </build>
253     </profile>
254     <!-- Skip the tests in this module -->
255     <profile>
256       <id>skipCommonTests</id>
257       <activation>
258         <property>
259           <name>skipCommonTests</name>
260         </property>
261       </activation>
262       <properties>
263         <surefire.skipFirstPart>true</surefire.skipFirstPart>
264         <surefire.skipSecondPart>true</surefire.skipSecondPart>
265       </properties>
266     </profile>
269     <!-- profile for building against Hadoop 2.x.  This is the default -->
270     <profile>
271       <id>hadoop-2.0</id>
272       <activation>
273         <property>
274             <!--Below formatting for dev-support/generate-hadoopX-poms.sh-->
275             <!--h2--><name>!hadoop.profile</name>
276         </property>
277       </activation>
278       <dependencies>
279         <dependency>
280           <groupId>org.apache.hadoop</groupId>
281           <artifactId>hadoop-common</artifactId>
282           <!--FYI This pulls in hadoop's guava. Its needed for Configuration
283                at least-->
284         </dependency>
285       </dependencies>
286       <build>
287         <plugins>
288           <plugin>
289             <artifactId>maven-dependency-plugin</artifactId>
290             <executions>
291               <execution>
292                 <id>create-mrapp-generated-classpath</id>
293                 <phase>generate-test-resources</phase>
294                 <goals>
295                   <goal>build-classpath</goal>
296                 </goals>
297                 <configuration>
298                   <!-- needed to run the unit test for DS to generate
299                   the required classpath that is required in the env
300                   of the launch container in the mini mr/yarn cluster
301                   -->
302                   <outputFile>${project.build.directory}/test-classes/mrapp-generated-classpath</outputFile>
303                 </configuration>
304               </execution>
305             </executions>
306           </plugin>
307         </plugins>
308       </build>
309     </profile>
311     <!--
312       profile for building against Hadoop 3.0.x. Activate using:
313        mvn -Dhadoop.profile=3.0
314     -->
315     <profile>
316       <id>hadoop-3.0</id>
317       <activation>
318         <property>
319           <name>hadoop.profile</name>
320           <value>3.0</value>
321         </property>
322       </activation>
323       <properties>
324         <hadoop.version>3.0-SNAPSHOT</hadoop.version>
325       </properties>
326       <dependencies>
327         <dependency>
328           <groupId>org.apache.hadoop</groupId>
329           <artifactId>hadoop-common</artifactId>
330         </dependency>
331       </dependencies>
332       <build>
333         <plugins>
334           <plugin>
335             <artifactId>maven-dependency-plugin</artifactId>
336             <executions>
337               <execution>
338                 <id>create-mrapp-generated-classpath</id>
339                 <phase>generate-test-resources</phase>
340                 <goals>
341                   <goal>build-classpath</goal>
342                 </goals>
343                 <configuration>
344                   <!-- needed to run the unit test for DS to generate
345                   the required classpath that is required in the env
346                   of the launch container in the mini mr/yarn cluster
347                   -->
348                   <outputFile>${project.build.directory}/test-classes/mrapp-generated-classpath</outputFile>
349                 </configuration>
350               </execution>
351             </executions>
352           </plugin>
353         </plugins>
354       </build>
355     </profile>
356     <profile>
357       <id>eclipse-specific</id>
358       <activation>
359         <property>
360           <name>m2e.version</name>
361         </property>
362       </activation>
363       <build>
364         <pluginManagement>
365           <plugins>
366             <!--This plugin's configuration is used to store Eclipse m2e settings
367                  only. It has no influence on the Maven build itself. -->
368             <plugin>
369               <groupId>org.eclipse.m2e</groupId>
370               <artifactId>lifecycle-mapping</artifactId>
371               <configuration>
372                 <lifecycleMappingMetadata>
373                   <pluginExecutions>
374                     <pluginExecution>
375                       <pluginExecutionFilter>
376                         <groupId>org.apache.maven.plugins</groupId>
377                         <artifactId>maven-antrun-plugin</artifactId>
378                         <versionRange>[${maven.antrun.version}]</versionRange>
379                         <goals>
380                           <goal>run</goal>
381                         </goals>
382                       </pluginExecutionFilter>
383                       <action>
384                         <execute/>
385                       </action>
386                     </pluginExecution>
387                     <pluginExecution>
388                       <pluginExecutionFilter>
389                         <groupId>org.apache.maven.plugins</groupId>
390                         <artifactId>maven-dependency-plugin</artifactId>
391                         <versionRange>[2.8,)</versionRange>
392                         <goals>
393                           <goal>build-classpath</goal>
394                         </goals>
395                       </pluginExecutionFilter>
396                       <action>
397                         <ignore></ignore>
398                       </action>
399                     </pluginExecution>
400                   </pluginExecutions>
401                 </lifecycleMappingMetadata>
402               </configuration>
403             </plugin>
404           </plugins>
405         </pluginManagement>
406       </build>
407     </profile>
408   </profiles>
409 </project>