HBASE-11440 Make KeyValueCodecWithTags as the default codec for
[hbase.git] / pom.xml
blob84f279d96c56998d60b24c23fb16dd257665815f
1 <?xml version="1.0" encoding="UTF-8"?>
2 <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">
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  */
23   ON MVN COMPILE NOT WORKING
25   If you wondering why 'mvn compile' does not work building HBase
26   (in particular, if you are doing it for the first time), instead do
27   'mvn package'.  If you are interested in the full story, see
28   https://issues.apache.org/jira/browse/HBASE-6795.
30 -->
31   <modelVersion>4.0.0</modelVersion>
32   <parent>
33     <groupId>org.apache</groupId>
34     <artifactId>apache</artifactId>
35     <version>12</version>
36     <relativePath/>
37     <!-- no parent resolution -->
38   </parent>
39   <groupId>org.apache.hbase</groupId>
40   <artifactId>hbase</artifactId>
41   <packaging>pom</packaging>
42   <version>2.0.0-SNAPSHOT</version>
43   <name>HBase</name>
44   <description>
45     Apache HBase™ is the Hadoop database. Use it when you need
46     random, realtime read/write access to your Big Data.
47     This project's goal is the hosting of very large tables -- billions of rows X millions of columns -- atop clusters
48     of commodity hardware.
49   </description>
50   <url>http://hbase.apache.org</url>
51   <modules>
52     <module>hbase-server</module>
53     <module>hbase-thrift</module>
54     <module>hbase-shell</module>
55     <module>hbase-protocol</module>
56     <module>hbase-client</module>
57     <module>hbase-hadoop-compat</module>
58     <module>hbase-common</module>
59     <module>hbase-it</module>
60     <module>hbase-examples</module>
61     <module>hbase-prefix-tree</module>
62     <module>hbase-assembly</module>
63     <module>hbase-testing-util</module>
64   </modules>
65   <scm>
66     <connection>scm:git:git://git.apache.org/hbase.git</connection>
67     <developerConnection>scm:git:https://git-wip-us.apache.org/repos/asf/hbase.git</developerConnection>
68     <url>https://git-wip-us.apache.org/repos/asf?p=hbase.git</url>
69   </scm>
70   <issueManagement>
71     <system>JIRA</system>
72     <url>http://issues.apache.org/jira/browse/HBASE</url>
73   </issueManagement>
74   <ciManagement>
75     <system>hudson</system>
76     <url>http://hudson.zones.apache.org/hudson/view/HBase/job/HBase-TRUNK/</url>
77   </ciManagement>
78   <mailingLists>
79     <mailingList>
80       <name>User List</name>
81       <subscribe>user-subscribe@hbase.apache.org</subscribe>
82       <unsubscribe>user-unsubscribe@hbase.apache.org</unsubscribe>
83       <post>user@hbase.apache.org</post>
84       <archive>http://mail-archives.apache.org/mod_mbox/hbase-user/</archive>
85       <otherArchives>
86         <otherArchive>http://dir.gmane.org/gmane.comp.java.hadoop.hbase.user</otherArchive>
87         <otherArchive>http://search-hadoop.com/?q=&amp;fc_project=HBase</otherArchive>
88       </otherArchives>
89     </mailingList>
90     <mailingList>
91       <name>Developer List</name>
92       <subscribe>dev-subscribe@hbase.apache.org</subscribe>
93       <unsubscribe>dev-unsubscribe@hbase.apache.org</unsubscribe>
94       <post>dev@hbase.apache.org</post>
95       <archive>http://mail-archives.apache.org/mod_mbox/hbase-dev/</archive>
96       <otherArchives>
97         <otherArchive>http://dir.gmane.org/gmane.comp.java.hadoop.hbase.devel</otherArchive>
98         <otherArchive>http://search-hadoop.com/?q=&amp;fc_project=HBase</otherArchive>
99       </otherArchives>
100     </mailingList>
101     <mailingList>
102       <name>Commits List</name>
103       <subscribe>commits-subscribe@hbase.apache.org</subscribe>
104       <unsubscribe>commits-unsubscribe@hbase.apache.org</unsubscribe>
105       <archive>http://mail-archives.apache.org/mod_mbox/hbase-commits/</archive>
106     </mailingList>
107     <mailingList>
108       <name>Issues List</name>
109       <subscribe>issues-subscribe@hbase.apache.org</subscribe>
110       <unsubscribe>issues-unsubscribe@hbase.apache.org</unsubscribe>
111       <archive>http://mail-archives.apache.org/mod_mbox/hbase-issues/</archive>
112     </mailingList>
113     <mailingList>
114       <name>Builds List</name>
115       <subscribe>builds-subscribe@hbase.apache.org</subscribe>
116       <unsubscribe>builds-unsubscribe@hbase.apache.org</unsubscribe>
117       <archive>http://mail-archives.apache.org/mod_mbox/hbase-builds/</archive>
118     </mailingList>
119   </mailingLists>
120   <developers>
121     <developer>
122       <id>acube123</id>
123       <name>Amitanand S. Aiyer</name>
124       <email>acube123@apache.org</email>
125       <timezone>-8</timezone>
126       <organization>Facebook</organization>
127       <organizationUrl>http://www.facebook.com</organizationUrl>
128     </developer>
129     <developer>
130       <id>apurtell</id>
131       <name>Andrew Purtell</name>
132       <email>apurtell@apache.org</email>
133       <timezone>-8</timezone>
134       <organization>Salesforce.com</organization>
135       <organizationUrl>http://www.salesforce.com/</organizationUrl>
136     </developer>
137     <developer>
138       <id>anoopsamjohn</id>
139       <name>Anoop Sam John</name>
140       <email>anoopsamjohn@apache.org</email>
141       <timezone>+5</timezone>
142       <organization>Intel</organization>
143       <organizationUrl>http://www.intel.com</organizationUrl>
144     </developer>
145     <developer>
146       <id>ddas</id>
147       <name>Devaraj Das</name>
148       <email>ddas@apache.org</email>
149       <timezone>-8</timezone>
150       <organization>Hortonworks</organization>
151       <organizationUrl>http://www.hortonworks.com</organizationUrl>
152     </developer>
153     <developer>
154       <id>dmeil</id>
155       <name>Doug Meil</name>
156       <email>dmeil@apache.org</email>
157       <timezone>-5</timezone>
158       <organization>Explorys</organization>
159       <organizationUrl>http://www.explorys.com</organizationUrl>
160     </developer>
161     <developer>
162       <id>enis</id>
163       <name>Enis Soztutar</name>
164       <email>enis@apache.org</email>
165       <timezone>-8</timezone>
166       <organization>Hortonworks</organization>
167       <organizationUrl>http://www.hortonworks.com</organizationUrl>
168     </developer>
169     <developer>
170       <id>fenghh</id>
171       <name>Honghua Feng</name>
172       <email>fenghh@apache.org</email>
173       <timezone>+8</timezone>
174       <organization>Xiaomi</organization>
175       <organizationUrl>http://www.xiaomi.com</organizationUrl>
176     </developer>
177     <developer>
178       <id>garyh</id>
179       <name>Gary Helmling</name>
180       <email>garyh@apache.org</email>
181       <timezone>-8</timezone>
182       <organization>Continuuity</organization>
183       <organizationUrl>http://www.continuuity.com</organizationUrl>
184     </developer>
185     <developer>
186       <id>gchanan</id>
187       <name>Gregory Chanan</name>
188       <email>gchanan@apache.org</email>
189       <timezone>-8</timezone>
190       <organization>Cloudera</organization>
191       <organizationUrl>http://www.cloudera.com</organizationUrl>
192     </developer>
193     <developer>
194       <id>jdcryans</id>
195       <name>Jean-Daniel Cryans</name>
196       <email>jdcryans@apache.org</email>
197       <timezone>-8</timezone>
198       <organization>Cloudera</organization>
199       <organizationUrl>http://www.cloudera.com</organizationUrl>
200     </developer>
201     <developer>
202       <id>jeffreyz</id>
203       <name>Jeffrey Zhong</name>
204       <email>jeffreyz@apache.org</email>
205       <timezone>-8</timezone>
206       <organization>Hortonworks</organization>
207       <organizationUrl>http://www.hortonworks.com</organizationUrl>
208     </developer>
209     <developer>
210       <id>jyates</id>
211       <name>Jesse Yates</name>
212       <email>jyates@apache.org</email>
213       <timezone>-8</timezone>
214       <organization>Salesforce.com</organization>
215       <organizationUrl>http://www.salesforce.com/</organizationUrl>
216     </developer>
217     <developer>
218       <id>jgray</id>
219       <name>Jonathan Gray</name>
220       <email>jgray@fb.com</email>
221       <timezone>-8</timezone>
222       <organization>Continuuity</organization>
223       <organizationUrl>http://www.continuuity.com</organizationUrl>
224     </developer>
225     <developer>
226       <id>jmhsieh</id>
227       <name>Jonathan Hsieh</name>
228       <email>jmhsieh@apache.org</email>
229       <timezone>-8</timezone>
230       <organization>Cloudera</organization>
231       <organizationUrl>http://www.cloudera.com</organizationUrl>
232     </developer>
233     <developer>
234       <id>jxiang</id>
235       <name>Jimmy Xiang</name>
236       <email>jxiang@apache.org</email>
237       <timezone>-8</timezone>
238       <organization>Cloudera</organization>
239       <organizationUrl>http://www.cloudera.com</organizationUrl>
240     </developer>
241     <developer>
242       <id>kannan</id>
243       <name>Kannan Muthukkaruppan</name>
244       <email>kannan@fb.com</email>
245       <timezone>-8</timezone>
246       <organization>Facebook</organization>
247       <organizationUrl>http://www.facebook.com</organizationUrl>
248     </developer>
249     <developer>
250       <id>karthik</id>
251       <name>Karthik Ranganathan</name>
252       <email>kranganathan@fb.com</email>
253       <timezone>-8</timezone>
254       <organization>Facebook</organization>
255       <organizationUrl>http://www.facebook.com</organizationUrl>
256     </developer>
257     <developer>
258       <id>larsgeorge</id>
259       <name>Lars George</name>
260       <email>larsgeorge@apache.org</email>
261       <timezone>+1</timezone>
262       <organization>Cloudera</organization>
263       <organizationUrl>http://www.cloudera.com/</organizationUrl>
264     </developer>
265     <developer>
266       <id>larsh</id>
267       <name>Lars Hofhansl</name>
268       <email>larsh@apache.org</email>
269       <timezone>-8</timezone>
270       <organization>Salesforce.com</organization>
271       <organizationUrl>http://www.salesforce.com/</organizationUrl>
272     </developer>
273     <developer>
274       <id>liangxie</id>
275       <name>Liang Xie</name>
276       <email>liangxie@apache.org</email>
277       <timezone>+8</timezone>
278       <organization>Xiaomi</organization>
279       <organizationUrl>http://www.xiaomi.com/</organizationUrl>
280     </developer>
281     <developer>
282       <id>mbautin</id>
283       <name>Mikhail Bautin</name>
284       <email>mbautin@apache.org</email>
285       <timezone>-8</timezone>
286       <organization>Facebook</organization>
287       <organizationUrl>http://www.facebook.com</organizationUrl>
288     </developer>
289     <developer>
290       <id>ndimiduk</id>
291       <name>Nick Dimiduk</name>
292       <email>ndimiduk@apache.org</email>
293       <timezone>-8</timezone>
294       <organization>Hortonworks</organization>
295       <organizationUrl>http://www.hortonworks.com</organizationUrl>
296     </developer>
297     <developer>
298       <id>nspiegelberg</id>
299       <name>Nicolas Spiegelberg</name>
300       <email>nspiegelberg@fb.com</email>
301       <timezone>-8</timezone>
302       <organization>Facebook</organization>
303       <organizationUrl>http://www.facebook.com</organizationUrl>
304     </developer>
305     <developer>
306       <id>rawson</id>
307       <name>Ryan Rawson</name>
308       <email>rawson@apache.org</email>
309       <timezone>-8</timezone>
310       <organization>WANdisco</organization>
311       <organizationUrl>http://www.wandisco.com/</organizationUrl>
312     </developer>
313     <developer>
314       <id>sershe</id>
315       <name>Sergey Shelukhin</name>
316       <email>sershe@apache.org</email>
317       <timezone>-8</timezone>
318       <organization>Hortonworks</organization>
319       <organizationUrl>http://www.hortonworks.com</organizationUrl>
320     </developer>
321     <developer>
322       <id>stack</id>
323       <name>Michael Stack</name>
324       <email>stack@apache.org</email>
325       <timezone>-8</timezone>
326       <organization>Cloudera</organization>
327       <organizationUrl>http://www.cloudera.com/</organizationUrl>
328     </developer>
329     <developer>
330       <id>tedyu</id>
331       <name>Ted Yu</name>
332       <email>yuzhihong@gmail.com</email>
333       <timezone>-8</timezone>
334       <organization>Hortonworks</organization>
335       <organizationUrl>http://www.hortonworks.com</organizationUrl>
336     </developer>
337     <developer>
338       <id>todd</id>
339       <name>Todd Lipcon</name>
340       <email>todd@apache.org</email>
341       <timezone>-8</timezone>
342       <organization>Cloudera</organization>
343       <organizationUrl>http://www.cloudera.com</organizationUrl>
344     </developer>
345     <developer>
346       <id>rajeshbabu</id>
347       <name>Rajeshbabu Chintaguntla</name>
348       <email>rajeshbabu@apache.org</email>
349       <timezone>+5</timezone>
350       <organization>Huawei</organization>
351       <organizationUrl>http://www.huawei.com</organizationUrl>
352     </developer>
353     <developer>
354       <id>ramkrishna</id>
355       <name>Ramkrishna S Vasudevan</name>
356       <email>ramkrishna@apache.org</email>
357       <timezone>+5</timezone>
358       <organization>Intel</organization>
359       <organizationUrl>http://www.intel.in</organizationUrl>
360     </developer>
361     <developer>
362       <id>liyin</id>
363       <name>Liyin Tang</name>
364       <email>liyin.tang@fb.com</email>
365       <timezone>-8</timezone>
366       <organization>Facebook</organization>
367       <organizationUrl>http://www.facebook.com</organizationUrl>
368     </developer>
369     <developer>
370       <id>nkeywal</id>
371       <name>Nicolas Liochon</name>
372       <email>nkeywal@apache.org</email>
373       <timezone>+1</timezone>
374       <organization>Scaled Risk</organization>
375       <organizationUrl>http://www.scaledrisk.com</organizationUrl>
376     </developer>
377     <developer>
378       <id>eclark</id>
379       <name>Elliott Clark</name>
380       <email>eclark@apache.org</email>
381       <timezone>-8</timezone>
382       <organization>Facebook</organization>
383       <organizationUrl>http://www.facebook.com</organizationUrl>
384     </developer>
385     <developer>
386       <id>mbertozzi</id>
387       <name>Matteo Bertozzi</name>
388       <email>mbertozzi@apache.org</email>
389       <timezone>0</timezone>
390       <organization>Cloudera</organization>
391       <organizationUrl>http://www.cloudera.com</organizationUrl>
392     </developer>
393     <developer>
394       <id>zjushch</id>
395       <name>Chunhui Shen</name>
396       <email>zjushch@apache.org</email>
397       <timezone>+8</timezone>
398       <organization>Taobao</organization>
399       <organizationUrl>http://www.taobao.com</organizationUrl>
400     </developer>
401   </developers>
402   <repositories>
403     <repository>
404       <id>apache release</id>
405       <url>https://repository.apache.org/content/repositories/releases/</url>
406     </repository>
407     <repository>
408       <id>java.net</id>
409       <name>Java.Net</name>
410       <url>http://download.java.net/maven/2/</url>
411       <snapshots>
412         <enabled>false</enabled>
413       </snapshots>
414       <releases>
415         <enabled>true</enabled>
416       </releases>
417     </repository>
418     <repository>
419       <id>codehaus</id>
420       <name>Codehaus Public</name>
421       <url>http://repository.codehaus.org/</url>
422       <snapshots>
423         <enabled>false</enabled>
424       </snapshots>
425       <releases>
426         <enabled>true</enabled>
427       </releases>
428     </repository>
429     <repository>
430       <id>repository.jboss.org</id>
431       <url>http://repository.jboss.org/nexus/content/groups/public-jboss/</url>
432       <snapshots>
433         <enabled>false</enabled>
434       </snapshots>
435     </repository>
436     <repository>
437       <id>ghelmling.testing</id>
438       <name>Gary Helmling test repo</name>
439       <url>http://people.apache.org/~garyh/mvn/</url>
440       <snapshots>
441         <enabled>true</enabled>
442       </snapshots>
443       <releases>
444         <enabled>true</enabled>
445       </releases>
446     </repository>
447   </repositories>
448   <pluginRepositories>
449     <pluginRepository>
450       <id>ghelmling.testing</id>
451       <name>Gary Helmling test repo</name>
452       <url>http://people.apache.org/~garyh/mvn/</url>
453       <snapshots>
454         <enabled>true</enabled>
455       </snapshots>
456       <releases>
457         <enabled>true</enabled>
458       </releases>
459     </pluginRepository>
460   </pluginRepositories>
461   <build>
462     <pluginManagement>
463       <plugins>
464         <plugin>
465           <groupId>org.apache.maven.plugins</groupId>
466           <artifactId>maven-release-plugin</artifactId>
467           <version>2.4.1</version>
468           <!--Making a release I've been using mvn 3.0 and specifying the apache-release
469               profile on the command line as follows:
471               $ ~/bin/mvn/bin/mvn  -Papache-release release:perform
473               I've also been kiling the release:prepare step mid-way to check the
474               release.properties it generates at the top-level.  Sometimes it refers
475               to HEAD rather than to the svn branch.
476            -->
477           <configuration>
478             <!--You need this profile. It'll sign your artifacts.
479                 I'm not sure if this config. actually works though.
480                 I've been specifying -Papache-release on the command-line
481              -->
482             <releaseProfiles>apache-release</releaseProfiles>
483             <!--This stops our running tests for each stage of maven release.
484                 But it builds the test jar.  From SUREFIRE-172.
485               -->
486             <arguments>-Dmaven.test.skip.exec</arguments>
487             <pomFileName>pom.xml</pomFileName>
488           </configuration>
489         </plugin>
490         <plugin>
491           <artifactId>maven-compiler-plugin</artifactId>
492           <version>2.5.1</version>
493           <configuration>
494             <source>${compileSource}</source>
495             <target>${compileSource}</target>
496             <showWarnings>true</showWarnings>
497             <showDeprecation>false</showDeprecation>
498             <compilerArgument>-Xlint:-options</compilerArgument>
499           </configuration>
500         </plugin>
501         <!-- Test oriented plugins -->
502         <plugin>
503           <artifactId>maven-surefire-plugin</artifactId>
504           <version>${surefire.version}</version>
505           <dependencies>
506             <!-- by default surefire selects dynamically the connector to the unit tests
507               tool. We want to use always the same as the different connectors can have different
508               bugs and behaviour. -->
509             <dependency>
510               <groupId>org.apache.maven.surefire</groupId>
511               <artifactId>${surefire.provider}</artifactId>
512               <version>${surefire.version}</version>
513             </dependency>
514           </dependencies>
515           <!-- Generic testing configuration for all packages -->
516           <configuration>
517             <failIfNoTests>false</failIfNoTests>
518             <skip>${surefire.skipFirstPart}</skip>
519             <forkCount>${surefire.firstPartForkCount}</forkCount>
520             <reuseForks>false</reuseForks>
521             <testFailureIgnore>${surefire.testFailureIgnore}</testFailureIgnore>
522             <forkedProcessTimeoutInSeconds>${surefire.timeout}</forkedProcessTimeoutInSeconds>
523             <!--Allocate some direct memory for direct memory tests-->
524             <argLine>-enableassertions -XX:MaxDirectMemorySize=1G -Xmx1900m -XX:MaxPermSize=256m -Djava.security.egd=file:/dev/./urandom -Djava.net.preferIPv4Stack=true -Djava.awt.headless=true</argLine>
525             <redirectTestOutputToFile>${test.output.tofile}</redirectTestOutputToFile>
526           </configuration>
527           <executions>
528             <execution>
529               <id>secondPartTestsExecution</id>
530               <phase>test</phase>
531               <goals>
532                 <goal>test</goal>
533               </goals>
534               <configuration>
535                 <skip>${surefire.skipSecondPart}</skip>
536                 <testFailureIgnore>${surefire.testFailureIgnore}</testFailureIgnore>
537                 <reuseForks>false</reuseForks>
538                 <forkCount>${surefire.secondPartForkCount}</forkCount>
539                 <groups>${surefire.secondPartGroups}</groups>
540               </configuration>
541             </execution>
542           </executions>
543         </plugin>
544         <plugin>
545           <artifactId>maven-surefire-report-plugin</artifactId>
546           <version>${surefire.version}</version>
547         </plugin>
548         <plugin>
549           <artifactId>maven-clean-plugin</artifactId>
550           <configuration>
551             <filesets>
552               <fileset>
553                 <!--dfs tests have build dir hardcoded. Clean it as part of
554                clean target-->
555                 <directory>build</directory>
556               </fileset>
557             </filesets>
558           </configuration>
559         </plugin>
560         <plugin>
561           <groupId>org.codehaus.mojo</groupId>
562           <artifactId>findbugs-maven-plugin</artifactId>
563           <version>${findbugs-maven-plugin.version}</version>
564           <configuration>
565             <excludeFilterFile>${project.basedir}/../dev-support/findbugs-exclude.xml</excludeFilterFile>
566             <findbugsXmlOutput>true</findbugsXmlOutput>
567             <xmlOutput>true</xmlOutput>
568             <effort>Max</effort>
569           </configuration>
570         </plugin>
571         <plugin>
572           <groupId>org.codehaus.mojo</groupId>
573           <artifactId>build-helper-maven-plugin</artifactId>
574           <version>1.5</version>
575         </plugin>
576         <plugin>
577           <artifactId>maven-antrun-plugin</artifactId>
578           <version>${maven.antrun.version}</version>
579         </plugin>
580         <plugin>
581           <groupId>org.jamon</groupId>
582           <artifactId>jamon-maven-plugin</artifactId>
583           <version>${jamon.plugin.version}</version>
584         </plugin>
585         <!-- Make a jar and put the sources in the jar.
586         In the parent pom, so submodules will do the right thing. -->
587         <plugin>
588           <groupId>org.apache.maven.plugins</groupId>
589           <artifactId>maven-source-plugin</artifactId>
590           <executions>
591             <execution>
592               <id>attach-sources</id>
593               <phase>prepare-package</phase>
594               <goals>
595                 <goal>jar-no-fork</goal>
596               </goals>
597             </execution>
598           </executions>
599         </plugin>
600         <!-- General configuration for submodules who want to build a test jar -->
601         <plugin>
602           <groupId>org.apache.maven.plugins</groupId>
603           <artifactId>maven-jar-plugin</artifactId>
604           <executions>
605             <execution>
606               <phase>prepare-package</phase>
607               <goals>
608                   <!--This goal will install a -test.jar when we do install
609                       See http://maven.apache.org/guides/mini/guide-attached-tests.html
610                    -->
611                 <goal>test-jar</goal>
612               </goals>
613             </execution>
614           </executions>
615           <configuration>
616             <excludes>
617               <exclude>hbase-site.xml</exclude>
618               <exclude>hdfs-site.xml</exclude>
619               <exclude>log4j.properties</exclude>
620               <exclude>mapred-queues.xml</exclude>
621               <exclude>mapred-site.xml</exclude>
622               <exclude>zoo.cfg</exclude>
623             </excludes>
624           </configuration>
625         </plugin>
626         <!-- General config for eclipse classpath/settings -->
627         <plugin>
628           <groupId>org.apache.maven.plugins</groupId>
629           <artifactId>maven-eclipse-plugin</artifactId>
630           <version>2.8</version>
631         </plugin>
632         <!--This plugin's configuration is used to store Eclipse m2e settings only. It
633           has no influence on the Maven build itself. m2e does not provide any safeguards against
634           rogue maven plugins that leak classloaders, modify random files inside workspace
635           or throw nasty exceptions to fail the build -->
636         <!-- Top level doesn't do any specific configuration currently - left to modules
637           to decide what they want to bind -->
638         <plugin>
639           <groupId>org.eclipse.m2e</groupId>
640           <artifactId>lifecycle-mapping</artifactId>
641           <version>1.0.0</version>
642         </plugin>
643         <plugin>
644           <!-- excludes are inherited -->
645           <groupId>org.apache.rat</groupId>
646           <artifactId>apache-rat-plugin</artifactId>
647           <version>0.8</version>
648           <configuration>
649             <excludes>
650               <exclude>**/*.versionsBackup</exclude>
651               <exclude>**/*.log</exclude>
652               <exclude>**/.*</exclude>
653               <exclude>**/*.tgz</exclude>
654               <exclude>**/*.orig</exclude>
655               <exclude>**/8e8ab58dcf39412da19833fcd8f687ac</exclude>
656               <exclude>**/a6a6562b777440fd9c34885428f5cb61.21e75333ada3d5bafb34bb918f29576c</exclude>
657               <exclude>**/.git/**</exclude>
658               <exclude>**/.idea/**</exclude>
659               <exclude>**/*.iml</exclude>
660               <exclude>**/target/**</exclude>
661               <exclude>**/CHANGES.txt</exclude>
662               <exclude>**/README.md</exclude>
663               <exclude>**/generated/**</exclude>
664               <exclude>**/gen-*/**</exclude>
665               <exclude>**/conf/*</exclude>
666               <exclude>**/*.avpr</exclude>
667               <exclude>**/*.svg</exclude>
668               <exclude>**/META-INF/services/**</exclude>
669               <!-- MIT: https://github.com/twbs/bootstrap/blob/master/LICENSE -->
670               <exclude>**/bootstrap-theme.css</exclude>
671               <exclude>**/bootstrap-theme.min.css</exclude>
672               <!-- MIT http://jquery.org/license -->
673               <exclude>**/jquery.min.js</exclude>
674               <!-- vector graphics -->
675               <exclude>**/*.vm</exclude>
676               <!-- apache doxia generated -->
677               <exclude>**/control</exclude>
678               <exclude>**/conffile</exclude>
679               <exclude>docs/*</exclude>
680               <exclude>logs/*</exclude>
681               <!-- auto-gen docs -->
682               <!--It don't like freebsd license-->
683               <exclude>**/src/main/site/resources/css/freebsd_docbook.css</exclude>
684               <!--  exclude source control files -->
685               <exclude>.git/**</exclude>
686               <exclude>.svn/**</exclude>
687               <exclude>**/.settings/**</exclude>
688               <exclude>**/patchprocess/**</exclude>
689             </excludes>
690           </configuration>
691         </plugin>
692         <plugin>
693           <artifactId>maven-assembly-plugin</artifactId>
694           <version>${maven.assembly.version}</version>
695           <configuration>
696             <!--Defer to the hbase-assembly sub-module.  It
697              does all assembly-->
698             <skipAssembly>true</skipAssembly>
699             <!--Do not attach assembly to project.-->
700             <attach>false</attach>
701           </configuration>
702         </plugin>
703         <plugin>
704           <groupId>org.apache.hadoop</groupId>
705           <artifactId>hadoop-maven-plugins</artifactId>
706           <version>${hadoop-two.version}</version>
707           <configuration>
708             <protocVersion>${protobuf.version}</protocVersion>
709             <protocCommand>${protoc.path}</protocCommand>
710           </configuration>
711         </plugin>
712       </plugins>
713     </pluginManagement>
714     <plugins>
715       <!-- parent-module only plugins -->
716       <plugin>
717         <groupId>org.codehaus.mojo</groupId>
718         <artifactId>xml-maven-plugin</artifactId>
719         <version>1.0</version>
720         <inherited>false</inherited>
721         <executions>
722           <execution>
723             <!-- Run the hbase-default.xml through a stylesheet so can show it in doc-->
724             <goals>
725               <goal>transform</goal>
726             </goals>
727             <phase>pre-site</phase>
728           </execution>
729         </executions>
730         <configuration>
731           <transformationSets>
732             <transformationSet>
733               <!--Reaching up and over into common sub-module for hbase-default.xml-->
734               <dir>${basedir}/hbase-common/src/main/resources/</dir>
735               <includes>
736                 <include>hbase-default.xml</include>
737               </includes>
738               <stylesheet>${basedir}/src/main/xslt/configuration_to_docbook_section.xsl</stylesheet>
739               <outputDir>${basedir}/target/docbkx</outputDir>
740             </transformationSet>
741           </transformationSets>
742         </configuration>
743       </plugin>
744       <!-- Special configuration for findbugs just in the parent so
745       the filter file location can be more general (see definition in pluginManagement) -->
746       <plugin>
747         <groupId>org.codehaus.mojo</groupId>
748         <artifactId>findbugs-maven-plugin</artifactId>
749         <executions>
750           <execution>
751             <inherited>false</inherited>
752             <goals>
753               <goal>findbugs</goal>
754             </goals>
755             <configuration>
756               <excludeFilterFile>${basedir}/dev-support/findbugs-exclude.xml</excludeFilterFile>
757             </configuration>
758           </execution>
759         </executions>
760       </plugin>
761       <!--Build the documentation.  We build it twice.  Once as a single page and then
762            again as multipage.-->
763       <plugin>
764         <groupId>com.agilejava.docbkx</groupId>
765         <artifactId>docbkx-maven-plugin</artifactId>
766         <version>2.0.15</version>
767         <inherited>false</inherited>
768         <dependencies>
769           <dependency>
770             <groupId>org.docbook</groupId>
771             <artifactId>docbook-xml</artifactId>
772             <version>4.4</version>
773             <scope>runtime</scope>
774           </dependency>
775           <dependency>
776             <groupId>net.sf.xslthl</groupId>
777             <artifactId>xslthl</artifactId>
778             <version>2.1.0</version>
779             <scope>runtime</scope>
780           </dependency>
781         </dependencies>
782         <configuration>
783           <highlightSource>1</highlightSource>
784           <imgSrcPath>images/</imgSrcPath>
785           <sourceDirectory>${basedir}/src/main/docbkx</sourceDirectory>
786           <xincludeSupported>true</xincludeSupported>
787           <useIdAsFilename>true</useIdAsFilename>
788           <sectionAutolabelMaxDepth>100</sectionAutolabelMaxDepth>
789           <sectionAutolabel>true</sectionAutolabel>
790           <htmlStylesheet>${baserdir}/src/main/site/resources/css/freebsd_docbook.css</htmlStylesheet>
791           <sectionLabelIncludesComponentLabel>true</sectionLabelIncludesComponentLabel>
792           <htmlCustomization>${basedir}/src/main/docbkx/customization.xsl</htmlCustomization>
793           <tocMaxDepth>2</tocMaxDepth>
794           <insertXrefPageNumber>yes</insertXrefPageNumber>
795           <chunkerOutputEncoding>UTF-8</chunkerOutputEncoding>
796         </configuration>
797         <executions>
798           <execution>
799             <id>multipage</id>
800             <goals>
801               <goal>generate-html</goal>
802             </goals>
803             <phase>pre-site</phase>
804             <configuration>
805               <navigShowtitles>true</navigShowtitles>
806               <chunkedOutput>true</chunkedOutput>
807               <targetDirectory>${basedir}/target/docbkx/book</targetDirectory>
808               <preProcess>
809                 <copy todir="target/docbkx/book/images">
810                   <fileset dir="src/main/site/resources/images/"/>
811                 </copy>
812                 <copy todir="target/docbkx/book/css">
813                   <fileset dir="src/main/site/resources/css/"/>
814                 </copy>
815               </preProcess>
816             </configuration>
817           </execution>
818           <execution>
819             <id>onepage</id>
820             <goals>
821               <goal>generate-html</goal>
822             </goals>
823             <phase>pre-site</phase>
824             <configuration>
825               <targetDirectory>${basedir}/target/docbkx/</targetDirectory>
826               <preProcess>
827                 <copy todir="target/docbkx/images">
828                   <fileset dir="src/main/site/resources/images/"/>
829                 </copy>
830                 <copy todir="target/docbkx/css">
831                   <fileset dir="src/main/site/resources/css/"/>
832                 </copy>
833               </preProcess>
834             </configuration>
835           </execution>
836         </executions>
837       </plugin>
838       <plugin>
839         <groupId>org.apache.maven.plugins</groupId>
840         <artifactId>maven-resources-plugin</artifactId>
841         <version>${maven.resources.plugin.version}</version>
842         <!--$NO-MVN-MAN-VER$ -->
843         <inherited>false</inherited>
844         <executions>
845           <execution>
846             <id>copy-javadocs</id>
847             <goals>
848               <goal>copy-resources</goal>
849             </goals>
850             <phase>site</phase>
851             <configuration>
852               <outputDirectory>target/site/apidocs</outputDirectory>
853               <resources>
854                 <resource>
855                   <directory>${basedir}/target/apidocs</directory>
856                   <includes>
857                     <include>**/**</include>
858                   </includes>
859                 </resource>
860               </resources>
861             </configuration>
862           </execution>
863           <execution>
864             <id>copy-docbkx</id>
865             <goals>
866               <goal>copy-resources</goal>
867             </goals>
868             <phase>site</phase>
869             <configuration>
870               <outputDirectory>target/site</outputDirectory>
871               <resources>
872                 <resource>
873                   <directory>${basedir}/target/docbkx</directory>
874                   <includes>
875                     <include>**/**</include>
876                   </includes>
877                 </resource>
878               </resources>
879             </configuration>
880           </execution>
881         </executions>
882         <configuration>
883           <escapeString>\</escapeString>
884         </configuration>
885       </plugin>
886       <plugin>
887         <groupId>org.apache.maven.plugins</groupId>
888         <artifactId>maven-site-plugin</artifactId>
889         <version>${maven.site.version}</version>
890         <inherited>false</inherited>
891         <dependencies>
892           <dependency>
893             <!-- add support for ssh/scp -->
894             <groupId>org.apache.maven.wagon</groupId>
895             <artifactId>wagon-ssh</artifactId>
896             <version>2.2</version>
897           </dependency>
898         </dependencies>
899         <configuration>
900           <siteDirectory>${basedir}/src/main/site</siteDirectory>
901           <inputEncoding>UTF-8</inputEncoding>
902           <outputEncoding>UTF-8</outputEncoding>
903           <templateFile>${basedir}/src/main/site/site.vm</templateFile>
904         </configuration>
905       </plugin>
906     </plugins>
907   </build>
908   <properties>
909     <tar.name>${project.build.finalName}.tar.gz</tar.name>
910     <maven.build.timestamp.format>
911       yyyy-MM-dd'T'HH:mm
912     </maven.build.timestamp.format>
913     <buildDate>${maven.build.timestamp}</buildDate>
914     <compileSource>1.7</compileSource>
915     <!-- Dependencies -->
916     <hadoop-two.version>2.4.0</hadoop-two.version>
917     <commons-cli.version>1.2</commons-cli.version>
918     <commons-codec.version>1.7</commons-codec.version>
919     <!-- pretty outdated -->
920     <commons-io.version>2.4</commons-io.version>
921     <commons-lang.version>2.6</commons-lang.version>
922     <commons-logging.version>1.1.3</commons-logging.version>
923     <commons-math.version>2.1</commons-math.version>
924     <disruptor.version>3.2.0</disruptor.version>
925     <collections.version>3.2.1</collections.version>
926     <httpclient.version>3.1</httpclient.version>
927     <metrics-core.version>2.2.0</metrics-core.version>
928     <guava.version>12.0.1</guava.version>
929     <jackson.version>1.8.8</jackson.version>
930     <jasper.version>5.5.23</jasper.version>
931     <jaxb-api.version>2.2.2</jaxb-api.version>
932     <jetty.version>6.1.26</jetty.version>
933     <jetty.jspapi.version>6.1.14</jetty.jspapi.version>
934     <jersey.version>1.9</jersey.version>
935     <jruby.version>1.6.8</jruby.version>
936     <junit.version>4.11</junit.version>
937     <htrace.version>3.0.4</htrace.version>
938     <log4j.version>1.2.17</log4j.version>
939     <mockito-all.version>1.9.0</mockito-all.version>
940     <protobuf.version>2.5.0</protobuf.version>
941     <thrift.version>0.9.0</thrift.version>
942     <zookeeper.version>3.4.6</zookeeper.version>
943     <slf4j.version>1.7.5</slf4j.version>
944     <hadoop-snappy.version>0.0.1-SNAPSHOT</hadoop-snappy.version>
945     <clover.version>2.6.3</clover.version>
946     <jamon-runtime.version>2.3.1</jamon-runtime.version>
947     <jettison.version>1.3.1</jettison.version>
948     <netty.version>4.0.19.Final</netty.version>
949     <!-- Plugin Dependencies -->
950     <maven.assembly.version>2.4</maven.assembly.version>
951     <maven.antrun.version>1.6</maven.antrun.version>
952     <jamon.plugin.version>2.3.4</jamon.plugin.version>
953     <findbugs-maven-plugin.version>2.5.2</findbugs-maven-plugin.version>
954     <findbugs-annotations>1.3.9-1</findbugs-annotations>
955     <maven.site.version>3.3</maven.site.version>
956     <javadoc.version>2.9</javadoc.version>
957     <maven.resources.plugin.version>2.6</maven.resources.plugin.version>
958     <!-- General Packaging -->
959     <package.prefix>/usr</package.prefix>
960     <package.conf.dir>/etc/hbase</package.conf.dir>
961     <package.log.dir>/var/log/hbase</package.log.dir>
962     <package.pid.dir>/var/run/hbase</package.pid.dir>
963     <package.release>1</package.release>
964     <final.name>${project.artifactId}-${project.version}</final.name>
965     <!-- Intraproject jar naming properties -->
966     <!-- TODO this is pretty ugly, but works for the moment.
967       Modules are pretty heavy-weight things, so doing this work isn't too bad. -->
968     <server.test.jar>hbase-server-${project.version}-tests.jar</server.test.jar>
969     <common.test.jar>hbase-common-${project.version}-tests.jar</common.test.jar>
970     <it.test.jar>hbase-it-${project.version}-tests.jar</it.test.jar>
971     <surefire.version>2.17</surefire.version>
972     <surefire.provider>surefire-junit47</surefire.provider>
973     <!-- default: run small & medium, medium with 2 threads -->
974     <surefire.skipFirstPart>false</surefire.skipFirstPart>
975     <surefire.skipSecondPart>false</surefire.skipSecondPart>
976     <surefire.firstPartForkCount>1</surefire.firstPartForkCount>
977     <surefire.secondPartForkCount>2</surefire.secondPartForkCount>
978     <surefire.firstPartGroups>org.apache.hadoop.hbase.SmallTests</surefire.firstPartGroups>
979     <surefire.secondPartGroups>org.apache.hadoop.hbase.MediumTests</surefire.secondPartGroups>
980     <surefire.testFailureIgnore>false</surefire.testFailureIgnore>
981     <test.output.tofile>true</test.output.tofile>
982     <surefire.timeout>900</surefire.timeout>
983   </properties>
984   <!-- Sorted by groups of dependencies then groupId and artifactId -->
985   <dependencyManagement>
986     <dependencies>
987       <!--
988       Note: There are a few exclusions to prevent duplicate code in different jars to be included:
989           org.mortbay.jetty:servlet-api, javax.servlet:servlet-api: These are excluded because they are
990           the same implementations. I chose org.mortbay.jetty:servlet-api-2.5 instead, which is a third
991           implementation of the same, because Hadoop also uses this version
992           javax.servlet:jsp-api in favour of org.mortbay.jetty:jsp-api-2.1
993         -->
994       <!-- Intra-module dependencies -->
995       <dependency>
996         <groupId>org.apache.hbase</groupId>
997         <artifactId>hbase-common</artifactId>
998         <version>${project.version}</version>
999       </dependency>
1000       <dependency>
1001         <groupId>org.apache.hbase</groupId>
1002         <artifactId>hbase-common</artifactId>
1003         <version>${project.version}</version>
1004         <type>test-jar</type>
1005         <scope>test</scope>
1006       </dependency>
1007       <dependency>
1008         <groupId>org.apache.hbase</groupId>
1009         <artifactId>hbase-protocol</artifactId>
1010         <version>${project.version}</version>
1011       </dependency>
1012       <dependency>
1013         <groupId>org.apache.hbase</groupId>
1014         <artifactId>hbase-hadoop-compat</artifactId>
1015         <version>${project.version}</version>
1016       </dependency>
1017       <dependency>
1018         <groupId>org.apache.hbase</groupId>
1019         <artifactId>hbase-hadoop-compat</artifactId>
1020         <version>${project.version}</version>
1021         <type>test-jar</type>
1022         <scope>test</scope>
1023       </dependency>
1024       <dependency>
1025         <groupId>org.apache.hbase</groupId>
1026         <artifactId>${compat.module}</artifactId>
1027         <version>${project.version}</version>
1028       </dependency>
1029       <dependency>
1030         <groupId>org.apache.hbase</groupId>
1031         <artifactId>${compat.module}</artifactId>
1032         <version>${project.version}</version>
1033         <type>test-jar</type>
1034         <scope>test</scope>
1035       </dependency>
1036       <dependency>
1037         <artifactId>hbase-server</artifactId>
1038         <groupId>org.apache.hbase</groupId>
1039         <version>${project.version}</version>
1040       </dependency>
1041       <dependency>
1042         <artifactId>hbase-server</artifactId>
1043         <groupId>org.apache.hbase</groupId>
1044         <version>${project.version}</version>
1045         <type>test-jar</type>
1046         <scope>test</scope>
1047       </dependency>
1048       <dependency>
1049         <artifactId>hbase-shell</artifactId>
1050         <groupId>org.apache.hbase</groupId>
1051         <version>${project.version}</version>
1052       </dependency>
1053       <dependency>
1054         <artifactId>hbase-shell</artifactId>
1055         <groupId>org.apache.hbase</groupId>
1056         <version>${project.version}</version>
1057         <type>test-jar</type>
1058         <scope>test</scope>
1059       </dependency>
1060       <dependency>
1061         <artifactId>hbase-thrift</artifactId>
1062         <groupId>org.apache.hbase</groupId>
1063         <version>${project.version}</version>
1064       </dependency>
1065       <dependency>
1066         <artifactId>hbase-thrift</artifactId>
1067         <groupId>org.apache.hbase</groupId>
1068         <version>${project.version}</version>
1069         <type>test-jar</type>
1070         <scope>test</scope>
1071       </dependency>
1072       <dependency>
1073         <groupId>org.apache.hbase</groupId>
1074         <artifactId>hbase-testing-util</artifactId>
1075         <version>${project.version}</version>
1076         <scope>test</scope>
1077       </dependency>
1078       <dependency>
1079         <groupId>org.apache.hbase</groupId>
1080         <artifactId>hbase-prefix-tree</artifactId>
1081         <version>${project.version}</version>
1082         <!-- unfortunately, runtime scope causes Eclipse to give compile time access which isn't
1083           needed, however it is apparently needed to run things within Eclipse -->
1084         <scope>runtime</scope>
1085       </dependency>
1086       <dependency>
1087         <artifactId>hbase-examples</artifactId>
1088         <groupId>org.apache.hbase</groupId>
1089         <version>${project.version}</version>
1090       </dependency>
1091       <dependency>
1092         <artifactId>hbase-it</artifactId>
1093         <groupId>org.apache.hbase</groupId>
1094         <version>${project.version}</version>
1095         <type>test-jar</type>
1096         <scope>test</scope>
1097       </dependency>
1098       <dependency>
1099         <artifactId>hbase-client</artifactId>
1100         <groupId>org.apache.hbase</groupId>
1101         <version>${project.version}</version>
1102       </dependency>
1103       <!-- General dependencies -->
1104       <dependency>
1105         <groupId>org.codehaus.jettison</groupId>
1106         <artifactId>jettison</artifactId>
1107         <version>${jettison.version}</version>
1108       </dependency>
1109       <dependency>
1110         <groupId>log4j</groupId>
1111         <artifactId>log4j</artifactId>
1112         <version>${log4j.version}</version>
1113       </dependency>
1114       <!--This is not used by hbase directly.  Used by thrift,
1115           yammer and zk.-->
1116       <dependency>
1117         <groupId>org.slf4j</groupId>
1118         <artifactId>slf4j-api</artifactId>
1119         <version>${slf4j.version}</version>
1120       </dependency>
1121       <dependency>
1122         <groupId>com.yammer.metrics</groupId>
1123         <artifactId>metrics-core</artifactId>
1124         <version>${metrics-core.version}</version>
1125       </dependency>
1126       <dependency>
1127         <groupId>com.google.guava</groupId>
1128         <artifactId>guava</artifactId>
1129         <version>${guava.version}</version>
1130       </dependency>
1131       <dependency>
1132         <groupId>commons-collections</groupId>
1133         <artifactId>commons-collections</artifactId>
1134         <version>${collections.version}</version>
1135       </dependency>
1136       <dependency>
1137         <groupId>commons-httpclient</groupId>
1138         <artifactId>commons-httpclient</artifactId>
1139         <version>${httpclient.version}</version>
1140       </dependency>
1141       <dependency>
1142         <groupId>commons-cli</groupId>
1143         <artifactId>commons-cli</artifactId>
1144         <version>${commons-cli.version}</version>
1145       </dependency>
1146       <dependency>
1147         <groupId>commons-codec</groupId>
1148         <artifactId>commons-codec</artifactId>
1149         <version>${commons-codec.version}</version>
1150       </dependency>
1151       <dependency>
1152         <groupId>commons-io</groupId>
1153         <artifactId>commons-io</artifactId>
1154         <version>${commons-io.version}</version>
1155       </dependency>
1156       <dependency>
1157         <groupId>commons-lang</groupId>
1158         <artifactId>commons-lang</artifactId>
1159         <version>${commons-lang.version}</version>
1160       </dependency>
1161       <dependency>
1162         <groupId>commons-logging</groupId>
1163         <artifactId>commons-logging</artifactId>
1164         <version>${commons-logging.version}</version>
1165       </dependency>
1166       <dependency>
1167         <groupId>org.apache.commons</groupId>
1168         <artifactId>commons-math</artifactId>
1169         <version>${commons-math.version}</version>
1170       </dependency>
1171       <dependency>
1172         <groupId>org.apache.zookeeper</groupId>
1173         <artifactId>zookeeper</artifactId>
1174         <version>${zookeeper.version}</version>
1175         <exclusions>
1176           <exclusion>
1177             <groupId>jline</groupId>
1178             <artifactId>jline</artifactId>
1179           </exclusion>
1180           <exclusion>
1181             <groupId>com.sun.jmx</groupId>
1182             <artifactId>jmxri</artifactId>
1183           </exclusion>
1184           <exclusion>
1185             <groupId>com.sun.jdmk</groupId>
1186             <artifactId>jmxtools</artifactId>
1187           </exclusion>
1188           <exclusion>
1189             <groupId>javax.jms</groupId>
1190             <artifactId>jms</artifactId>
1191           </exclusion>
1192           <exclusion>
1193             <groupId>io.netty</groupId>
1194             <artifactId>netty</artifactId>
1195           </exclusion>
1196         </exclusions>
1197       </dependency>
1198       <dependency>
1199         <groupId>io.netty</groupId>
1200         <artifactId>netty-all</artifactId>
1201         <version>${netty.version}</version>
1202       </dependency>
1203       <dependency>
1204         <groupId>org.apache.thrift</groupId>
1205         <artifactId>libthrift</artifactId>
1206         <version>${thrift.version}</version>
1207         <exclusions>
1208           <exclusion>
1209             <groupId>org.slf4j</groupId>
1210             <artifactId>slf4j-simple</artifactId>
1211           </exclusion>
1212         </exclusions>
1213       </dependency>
1214       <dependency>
1215         <groupId>org.jruby</groupId>
1216         <artifactId>jruby-complete</artifactId>
1217         <version>${jruby.version}</version>
1218       </dependency>
1219       <dependency>
1220         <groupId>org.mortbay.jetty</groupId>
1221         <artifactId>jetty</artifactId>
1222         <version>${jetty.version}</version>
1223         <exclusions>
1224           <exclusion>
1225             <groupId>org.mortbay.jetty</groupId>
1226             <artifactId>servlet-api</artifactId>
1227           </exclusion>
1228         </exclusions>
1229       </dependency>
1230       <dependency>
1231         <groupId>org.mortbay.jetty</groupId>
1232         <artifactId>jetty-util</artifactId>
1233         <version>${jetty.version}</version>
1234       </dependency>
1235       <dependency>
1236         <groupId>org.mortbay.jetty</groupId>
1237         <artifactId>jetty-sslengine</artifactId>
1238         <version>${jetty.version}</version>
1239       </dependency>
1240       <dependency>
1241         <groupId>org.mortbay.jetty</groupId>
1242         <artifactId>jsp-2.1</artifactId>
1243         <version>${jetty.jspapi.version}</version>
1244         <exclusions>
1245           <exclusion>
1246             <groupId>org.eclipse.jdt</groupId>
1247             <artifactId>core</artifactId>
1248           </exclusion>
1249           <exclusion>
1250             <groupId>ant</groupId>
1251             <artifactId>ant</artifactId>
1252           </exclusion>
1253         </exclusions>
1254       </dependency>
1255       <dependency>
1256         <groupId>org.mortbay.jetty</groupId>
1257         <artifactId>jsp-api-2.1</artifactId>
1258         <version>${jetty.jspapi.version}</version>
1259       </dependency>
1260       <dependency>
1261         <groupId>org.mortbay.jetty</groupId>
1262         <artifactId>servlet-api-2.5</artifactId>
1263         <version>${jetty.jspapi.version}</version>
1264       </dependency>
1265       <!-- While jackson is also a dependency of jersey it
1266            can bring in jars from different, incompatible versions. We force
1267            the same version with these dependencies -->
1268       <dependency>
1269         <groupId>org.codehaus.jackson</groupId>
1270         <artifactId>jackson-core-asl</artifactId>
1271         <version>${jackson.version}</version>
1272       </dependency>
1273       <dependency>
1274         <groupId>org.codehaus.jackson</groupId>
1275         <artifactId>jackson-mapper-asl</artifactId>
1276         <version>${jackson.version}</version>
1277       </dependency>
1278       <dependency>
1279         <groupId>org.codehaus.jackson</groupId>
1280         <artifactId>jackson-jaxrs</artifactId>
1281         <version>${jackson.version}</version>
1282       </dependency>
1283       <dependency>
1284         <groupId>org.codehaus.jackson</groupId>
1285         <artifactId>jackson-xc</artifactId>
1286         <version>${jackson.version}</version>
1287       </dependency>
1288       <dependency>
1289         <!--If this is not in the runtime lib, we get odd
1290       "2009-02-27 11:38:39.504::WARN:  failed jsp
1291        java.lang.NoSuchFieldError: IS_SECURITY_ENABLED"
1292        exceptions out of jetty deploying webapps.
1293        St.Ack Thu May 20 01:04:41 PDT 2010
1294       -->
1295         <groupId>tomcat</groupId>
1296         <artifactId>jasper-compiler</artifactId>
1297         <version>${jasper.version}</version>
1298         <scope>runtime</scope>
1299         <exclusions>
1300           <exclusion>
1301             <groupId>javax.servlet</groupId>
1302             <artifactId>jsp-api</artifactId>
1303           </exclusion>
1304           <exclusion>
1305             <groupId>javax.servlet</groupId>
1306             <artifactId>servlet-api</artifactId>
1307           </exclusion>
1308           <exclusion>
1309             <groupId>ant</groupId>
1310             <artifactId>ant</artifactId>
1311           </exclusion>
1312         </exclusions>
1313       </dependency>
1314       <dependency>
1315         <groupId>tomcat</groupId>
1316         <artifactId>jasper-runtime</artifactId>
1317         <version>${jasper.version}</version>
1318         <scope>runtime</scope>
1319         <exclusions>
1320           <exclusion>
1321             <groupId>javax.servlet</groupId>
1322             <artifactId>servlet-api</artifactId>
1323           </exclusion>
1324         </exclusions>
1325       </dependency>
1326       <dependency>
1327         <groupId>org.jamon</groupId>
1328         <artifactId>jamon-runtime</artifactId>
1329         <version>${jamon-runtime.version}</version>
1330       </dependency>
1331       <!-- REST dependencies -->
1332       <dependency>
1333         <groupId>com.google.protobuf</groupId>
1334         <artifactId>protobuf-java</artifactId>
1335         <version>${protobuf.version}</version>
1336       </dependency>
1337       <dependency>
1338         <groupId>com.sun.jersey</groupId>
1339         <artifactId>jersey-core</artifactId>
1340         <version>${jersey.version}</version>
1341       </dependency>
1342       <dependency>
1343         <groupId>com.sun.jersey</groupId>
1344         <artifactId>jersey-json</artifactId>
1345         <version>${jersey.version}</version>
1346         <exclusions>
1347           <exclusion>
1348             <groupId>stax</groupId>
1349             <artifactId>stax-api</artifactId>
1350           </exclusion>
1351         </exclusions>
1352       </dependency>
1353       <dependency>
1354         <groupId>com.sun.jersey</groupId>
1355         <artifactId>jersey-server</artifactId>
1356         <version>${jersey.version}</version>
1357       </dependency>
1358       <dependency>
1359         <groupId>javax.xml.bind</groupId>
1360         <artifactId>jaxb-api</artifactId>
1361         <version>${jaxb-api.version}</version>
1362         <exclusions>
1363           <exclusion>
1364             <groupId>javax.xml.stream</groupId>
1365             <artifactId>stax-api</artifactId>
1366           </exclusion>
1367         </exclusions>
1368       </dependency>
1369       <dependency>
1370         <groupId>junit</groupId>
1371         <artifactId>junit</artifactId>
1372         <version>${junit.version}</version>
1373       </dependency>
1374       <dependency>
1375         <groupId>org.mockito</groupId>
1376         <artifactId>mockito-all</artifactId>
1377         <version>${mockito-all.version}</version>
1378         <scope>test</scope>
1379       </dependency>
1380       <dependency>
1381         <groupId>org.htrace</groupId>
1382         <artifactId>htrace-core</artifactId>
1383         <version>${htrace.version}</version>
1384       </dependency>
1385       <dependency>
1386         <groupId>com.lmax</groupId>
1387         <artifactId>disruptor</artifactId>
1388         <version>${disruptor.version}</version>
1389       </dependency>
1390     </dependencies>
1391   </dependencyManagement>
1392   <!-- Dependencies needed by subprojects -->
1393   <dependencies>
1394     <dependency>
1395       <groupId>com.github.stephenc.findbugs</groupId>
1396       <artifactId>findbugs-annotations</artifactId>
1397       <version>${findbugs-annotations}</version>
1398       <scope>compile</scope>
1399     </dependency>
1400     <dependency>
1401       <groupId>log4j</groupId>
1402       <artifactId>log4j</artifactId>
1403     </dependency>
1404     <!-- Test dependencies -->
1405     <dependency>
1406       <groupId>junit</groupId>
1407       <artifactId>junit</artifactId>
1408     </dependency>
1409     <dependency>
1410       <groupId>org.mockito</groupId>
1411       <artifactId>mockito-all</artifactId>
1412     </dependency>
1413   </dependencies>
1414   <!--
1415   To publish, use the following settings.xml file ( placed in ~/.m2/settings.xml )
1417  <settings>
1418   <servers>
1419     <server>
1420       <id>apache.releases.https</id>
1421       <username>hbase_committer</username>
1422       <password>********</password>
1423     </server>
1425     <server>
1426       <id>apache.snapshots.https</id>
1427       <username>hbase_committer</username>
1428       <password>********</password>
1429     </server>
1431   </servers>
1432  </settings>
1434   $ mvn deploy
1435 (or)
1436   $ mvn -s /my/path/settings.xml deploy
1438   -->
1439   <profiles>
1440     <profile>
1441       <id>os.linux</id>
1442       <activation>
1443         <activeByDefault>false</activeByDefault>
1444         <os>
1445           <family>Linux</family>
1446         </os>
1447       </activation>
1448       <properties>
1449         <build.platform>${os.name}-${os.arch}-${sun.arch.data.model}</build.platform>
1450       </properties>
1451     </profile>
1452     <profile>
1453       <id>os.mac</id>
1454       <activation>
1455         <os>
1456           <family>Mac</family>
1457         </os>
1458       </activation>
1459       <properties>
1460         <build.platform>Mac_OS_X-${sun.arch.data.model}</build.platform>
1461       </properties>
1462     </profile>
1463     <profile>
1464       <id>os.windows</id>
1465       <activation>
1466         <os>
1467           <family>Windows</family>
1468         </os>
1469       </activation>
1470       <properties>
1471         <build.platform>cygwin</build.platform>
1472       </properties>
1473       <build>
1474         <pluginManagement>
1475           <plugins>
1476             <plugin>
1477               <groupId>org.apache.maven.plugins</groupId>
1478               <artifactId>maven-surefire-plugin</artifactId>
1479               <configuration>
1480                 <argLine>-enableassertions -Xmx1900m -XX:MaxPermSize=256m -Djava.security.egd=file:/dev/./urandom -Djava.net.preferIPv4Stack=true "-Djava.library.path=${hadoop.library.path};${java.library.path}"</argLine>
1481                 <systemProperties>
1482                   <property>
1483                     <name>java.net.preferIPv4Stack</name>
1484                     <value>true</value>
1485                   </property>
1486                 </systemProperties>
1487               </configuration>
1488             </plugin>
1489           </plugins>
1490         </pluginManagement>
1491       </build>
1492     </profile>
1493     <!-- this profile should be activated for release builds -->
1494     <profile>
1495       <id>release</id>
1496       <build>
1497         <plugins>
1498           <plugin>
1499             <groupId>org.apache.rat</groupId>
1500             <artifactId>apache-rat-plugin</artifactId>
1501             <executions>
1502               <execution>
1503                 <phase>package</phase>
1504                 <goals>
1505                   <goal>check</goal>
1506                 </goals>
1507               </execution>
1508             </executions>
1509           </plugin>
1510         </plugins>
1511       </build>
1512     </profile>
1513     <!-- Dependency management profiles for submodules when building against specific hadoop branches.-->
1514     <!-- Submodules that need hadoop dependencies should declare
1515     profiles with activation properties matching the profile here.
1516     Generally, it should be sufficient to copy the first
1517     few lines of the profile you want to match.  -->
1518     <!-- profile for building against Hadoop 2.0.x
1519          This is the default.
1520          -->
1521     <profile>
1522       <id>hadoop-2.0</id>
1523       <activation>
1524         <property>
1525             <!--Below formatting for dev-support/generate-hadoopX-poms.sh-->
1526             <!--h2--><name>!hadoop.profile</name>
1527         </property>
1528       </activation>
1529       <modules>
1530         <module>hbase-hadoop2-compat</module>
1531       </modules>
1532       <properties>
1533         <hadoop.version>${hadoop-two.version}</hadoop.version>
1534         <compat.module>hbase-hadoop2-compat</compat.module>
1535         <assembly.file>src/main/assembly/hadoop-two-compat.xml</assembly.file>
1536       </properties>
1537       <dependencyManagement>
1538         <dependencies>
1539           <dependency>
1540             <groupId>org.apache.hadoop</groupId>
1541             <artifactId>hadoop-mapreduce-client-core</artifactId>
1542             <version>${hadoop-two.version}</version>
1543             <exclusions>
1544               <exclusion>
1545                 <groupId>io.netty</groupId>
1546                 <artifactId>netty</artifactId>
1547               </exclusion>
1548             </exclusions>
1549           </dependency>
1550           <dependency>
1551             <groupId>org.apache.hadoop</groupId>
1552             <artifactId>hadoop-mapreduce-client-jobclient</artifactId>
1553             <version>${hadoop-two.version}</version>
1554             <exclusions>
1555               <exclusion>
1556                 <groupId>io.netty</groupId>
1557                 <artifactId>netty</artifactId>
1558               </exclusion>
1559             </exclusions>
1560           </dependency>
1561           <dependency>
1562             <groupId>org.apache.hadoop</groupId>
1563             <artifactId>hadoop-mapreduce-client-jobclient</artifactId>
1564             <version>${hadoop-two.version}</version>
1565             <type>test-jar</type>
1566             <scope>test</scope>
1567             <exclusions>
1568               <exclusion>
1569                 <groupId>io.netty</groupId>
1570                 <artifactId>netty</artifactId>
1571               </exclusion>
1572             </exclusions>
1573           </dependency>
1574           <dependency>
1575             <groupId>org.apache.hadoop</groupId>
1576             <artifactId>hadoop-hdfs</artifactId>
1577             <exclusions>
1578               <exclusion>
1579                 <groupId>javax.servlet.jsp</groupId>
1580                 <artifactId>jsp-api</artifactId>
1581               </exclusion>
1582               <exclusion>
1583                 <groupId>javax.servlet</groupId>
1584                 <artifactId>servlet-api</artifactId>
1585               </exclusion>
1586               <exclusion>
1587                 <groupId>stax</groupId>
1588                 <artifactId>stax-api</artifactId>
1589               </exclusion>
1590             </exclusions>
1591             <version>${hadoop-two.version}</version>
1592           </dependency>
1593           <dependency>
1594             <groupId>org.apache.hadoop</groupId>
1595             <artifactId>hadoop-hdfs</artifactId>
1596             <version>${hadoop-two.version}</version>
1597             <type>test-jar</type>
1598             <scope>test</scope>
1599             <exclusions>
1600               <exclusion>
1601                 <groupId>javax.servlet.jsp</groupId>
1602                 <artifactId>jsp-api</artifactId>
1603               </exclusion>
1604               <exclusion>
1605                 <groupId>javax.servlet</groupId>
1606                 <artifactId>servlet-api</artifactId>
1607               </exclusion>
1608               <exclusion>
1609                 <groupId>stax</groupId>
1610                 <artifactId>stax-api</artifactId>
1611               </exclusion>
1612             </exclusions>
1613           </dependency>
1614           <dependency>
1615             <groupId>org.apache.hadoop</groupId>
1616             <artifactId>hadoop-auth</artifactId>
1617             <version>${hadoop-two.version}</version>
1618           </dependency>
1619           <dependency>
1620             <groupId>org.apache.hadoop</groupId>
1621             <artifactId>hadoop-common</artifactId>
1622             <version>${hadoop-two.version}</version>
1623             <exclusions>
1624               <exclusion>
1625                 <groupId>javax.servlet.jsp</groupId>
1626                 <artifactId>jsp-api</artifactId>
1627               </exclusion>
1628               <exclusion>
1629                 <groupId>javax.servlet</groupId>
1630                 <artifactId>servlet-api</artifactId>
1631               </exclusion>
1632               <exclusion>
1633                 <groupId>stax</groupId>
1634                 <artifactId>stax-api</artifactId>
1635               </exclusion>
1636               <exclusion>
1637                 <groupId>io.netty</groupId>
1638                 <artifactId>netty</artifactId>
1639               </exclusion>
1640             </exclusions>
1641           </dependency>
1642           <dependency>
1643             <groupId>org.apache.hadoop</groupId>
1644             <artifactId>hadoop-client</artifactId>
1645             <version>${hadoop-two.version}</version>
1646           </dependency>
1647           <dependency>
1648             <groupId>org.apache.hadoop</groupId>
1649             <artifactId>hadoop-annotations</artifactId>
1650             <version>${hadoop-two.version}</version>
1651           </dependency>
1652           <!-- This was marked as test dep in earlier pom, but was scoped compile.
1653             Where do we actually need it? -->
1654           <dependency>
1655             <groupId>org.apache.hadoop</groupId>
1656             <artifactId>hadoop-minicluster</artifactId>
1657             <version>${hadoop-two.version}</version>
1658             <exclusions>
1659               <exclusion>
1660                 <groupId>javax.servlet.jsp</groupId>
1661                 <artifactId>jsp-api</artifactId>
1662               </exclusion>
1663               <exclusion>
1664                 <groupId>javax.servlet</groupId>
1665                 <artifactId>servlet-api</artifactId>
1666               </exclusion>
1667               <exclusion>
1668                 <groupId>stax</groupId>
1669                 <artifactId>stax-api</artifactId>
1670               </exclusion>
1671               <exclusion>
1672                 <groupId>io.netty</groupId>
1673                 <artifactId>netty</artifactId>
1674               </exclusion>
1675             </exclusions>
1676           </dependency>
1677         </dependencies>
1678       </dependencyManagement>
1679     </profile>
1680     <!--
1681       profile for building against Hadoop 3.0.0. Activate using:
1682        mvn -Dhadoop.profile=3.0
1683     -->
1684     <profile>
1685       <id>hadoop-3.0</id>
1686       <activation>
1687         <property>
1688           <name>hadoop.profile</name>
1689           <value>3.0</value>
1690         </property>
1691       </activation>
1692       <properties>
1693         <hadoop.version>3.0.0-SNAPSHOT</hadoop.version>
1694       </properties>
1695       <dependencies>
1696         <dependency>
1697           <groupId>org.apache.hadoop</groupId>
1698           <artifactId>hadoop-common</artifactId>
1699           <version>${hadoop.version}</version>
1700         </dependency>
1701         <dependency>
1702           <groupId>org.apache.hadoop</groupId>
1703           <artifactId>hadoop-annotations</artifactId>
1704           <version>${hadoop.version}</version>
1705         </dependency>
1706         <!-- test deps for hadoop-0.24 profile -->
1707         <!-- Says test, but scoped for compile. Which is correct? -->
1708         <dependency>
1709           <groupId>org.apache.hadoop</groupId>
1710           <artifactId>hadoop-minicluster</artifactId>
1711           <version>${hadoop.version}</version>
1712           <scope>compile</scope>
1713         </dependency>
1714       </dependencies>
1715     </profile>
1716     <!-- profiles for the tests
1717          See as well the properties of the project for the values
1718          when no profile is active.     -->
1719     <profile>
1720       <!-- Use it to launch the tests without parallelisation -->
1721       <id>nonParallelTests</id>
1722       <activation>
1723         <activeByDefault>false</activeByDefault>
1724       </activation>
1725       <properties>
1726         <surefire.firstPartForkCount>1</surefire.firstPartForkCount>
1727       </properties>
1728     </profile>
1729     <profile>
1730       <!-- Use it to launch the tests in parallel in the same JVM  -->
1731       <id>parallelTests</id>
1732       <activation>
1733         <activeByDefault>false</activeByDefault>
1734       </activation>
1735       <properties>
1736         <surefire.firstPartForkCount>1</surefire.firstPartForkCount>
1737       </properties>
1738     </profile>
1739     <profile>
1740       <!-- Use it to launch the tests in the same JVM  -->
1741       <id>singleJVMTests</id>
1742       <activation>
1743         <activeByDefault>false</activeByDefault>
1744       </activation>
1745       <properties>
1746         <surefire.firstPartForkCount>1</surefire.firstPartForkCount>
1747         <surefire.skipFirstPart>false</surefire.skipFirstPart>
1748         <surefire.skipSecondPart>true</surefire.skipSecondPart>
1749         <surefire.firstPartGroups/>
1750       </properties>
1751     </profile>
1752     <profile>
1753       <!-- Use it to launch small tests only -->
1754       <id>runSmallTests</id>
1755       <activation>
1756         <activeByDefault>false</activeByDefault>
1757       </activation>
1758       <properties>
1759         <surefire.firstPartForkCount>1</surefire.firstPartForkCount>
1760         <surefire.skipFirstPart>false</surefire.skipFirstPart>
1761         <surefire.skipSecondPart>true</surefire.skipSecondPart>
1762         <surefire.firstPartGroups>org.apache.hadoop.hbase.SmallTests</surefire.firstPartGroups>
1763         <surefire.secondPartGroups/>
1764       </properties>
1765     </profile>
1766     <profile>
1767       <!-- Use it to launch medium tests only -->
1768       <id>runMediumTests</id>
1769       <activation>
1770         <activeByDefault>false</activeByDefault>
1771       </activation>
1772       <properties>
1773         <surefire.skipFirstPart>false</surefire.skipFirstPart>
1774         <surefire.skipSecondPart>true</surefire.skipSecondPart>
1775         <surefire.firstPartGroups>org.apache.hadoop.hbase.MediumTests</surefire.firstPartGroups>
1776         <surefire.secondPartGroups/>
1777       </properties>
1778     </profile>
1779     <profile>
1780       <!-- Use it to launch large tests only -->
1781       <id>runLargeTests</id>
1782       <activation>
1783         <activeByDefault>false</activeByDefault>
1784       </activation>
1785       <properties>
1786         <surefire.skipFirstPart>false</surefire.skipFirstPart>
1787         <surefire.skipSecondPart>true</surefire.skipSecondPart>
1788         <surefire.firstPartGroups>org.apache.hadoop.hbase.LargeTests</surefire.firstPartGroups>
1789         <surefire.secondPartGroups/>
1790       </properties>
1791     </profile>
1792     <profile>
1793       <!-- Use it to launch small & medium tests -->
1794       <id>runDevTests</id>
1795       <activation>
1796         <activeByDefault>false</activeByDefault>
1797       </activation>
1798       <properties>
1799         <surefire.firstPartForkCount>1</surefire.firstPartForkCount>
1800         <surefire.skipFirstPart>false</surefire.skipFirstPart>
1801         <surefire.skipSecondPart>false</surefire.skipSecondPart>
1802         <surefire.firstPartGroups>org.apache.hadoop.hbase.SmallTests</surefire.firstPartGroups>
1803         <surefire.secondPartGroups>org.apache.hadoop.hbase.MediumTests</surefire.secondPartGroups>
1804       </properties>
1805     </profile>
1806     <profile>
1807       <!-- Use it to launch all tests -->
1808       <id>runAllTests</id>
1809       <activation>
1810         <activeByDefault>false</activeByDefault>
1811       </activation>
1812       <properties>
1813         <surefire.firstPartForkCount>1</surefire.firstPartForkCount>
1814         <surefire.secondPartForkCount>5</surefire.secondPartForkCount>
1815         <surefire.skipFirstPart>false</surefire.skipFirstPart>
1816         <surefire.skipSecondPart>false</surefire.skipSecondPart>
1817         <surefire.firstPartGroups>org.apache.hadoop.hbase.SmallTests</surefire.firstPartGroups>
1818         <surefire.secondPartGroups>org.apache.hadoop.hbase.MediumTests,org.apache.hadoop.hbase.LargeTests</surefire.secondPartGroups>
1819       </properties>
1820     </profile>
1821     <profile>
1822       <!-- Use it to launch tests locally-->
1823       <id>localTests</id>
1824       <activation>
1825         <property>
1826           <name>test</name>
1827         </property>
1828       </activation>
1829       <properties>
1830         <surefire.provider>surefire-junit4</surefire.provider>
1831         <surefire.skipFirstPart>false</surefire.skipFirstPart>
1832         <surefire.skipSecondPart>true</surefire.skipSecondPart>
1833         <surefire.firstPartGroups/>
1834       </properties>
1835     </profile>
1836     <!-- Profile for running clover. You need to have a clover license under ~/.clover.license for ${clover.version}
1837          or you can provide the license with -Dmaven.clover.licenseLocation=/path/to/license. Committers can find
1838          the license under https://svn.apache.org/repos/private/committers/donated-licenses/clover/
1839          Note that clover 2.6.3 does not run with maven 3, so you have to use maven2. The report will be generated
1840          under target/site/clover/index.html when you run
1841          MAVEN_OPTS=-Xmx2048m mvn clean test -Pclover site -->
1842     <profile>
1843       <id>clover</id>
1844       <activation>
1845         <activeByDefault>false</activeByDefault>
1846         <property>
1847           <name>clover</name>
1848         </property>
1849       </activation>
1850       <properties>
1851         <maven.clover.licenseLocation>${user.home}/.clover.license</maven.clover.licenseLocation>
1852         <clover.version>2.6.3</clover.version>
1853       </properties>
1854       <build>
1855         <plugins>
1856           <plugin>
1857             <groupId>com.atlassian.maven.plugins</groupId>
1858             <artifactId>maven-clover2-plugin</artifactId>
1859             <version>${clover.version}</version>
1860             <configuration>
1861               <includesAllSourceRoots>true</includesAllSourceRoots>
1862               <includesTestSourceRoots>true</includesTestSourceRoots>
1863               <targetPercentage>50%</targetPercentage>
1864               <generateHtml>true</generateHtml>
1865               <generateXml>true</generateXml>
1866               <excludes>
1867                 <exclude>**/generated/**</exclude>
1868               </excludes>
1869             </configuration>
1870             <executions>
1871               <execution>
1872                 <id>clover-setup</id>
1873                 <phase>process-sources</phase>
1874                 <goals>
1875                   <goal>setup</goal>
1876                 </goals>
1877               </execution>
1878               <execution>
1879                 <id>clover</id>
1880                 <phase>site</phase>
1881                 <goals>
1882                   <goal>clover</goal>
1883                 </goals>
1884               </execution>
1885             </executions>
1886           </plugin>
1887         </plugins>
1888       </build>
1889     </profile>
1890   </profiles>
1891   <!-- See http://jira.codehaus.org/browse/MSITE-443 why the settings need to be here and not in pluginManagement. -->
1892   <reporting>
1893     <plugins>
1894       <plugin>
1895         <artifactId>maven-project-info-reports-plugin</artifactId>
1896         <version>2.7</version>
1897         <reportSets>
1898           <reportSet>
1899             <reports>
1900               <report>project-team</report>
1901               <report>mailing-list</report>
1902               <report>cim</report>
1903               <report>issue-tracking</report>
1904               <report>license</report>
1905               <report>scm</report>
1906               <report>index</report>
1907             </reports>
1908           </reportSet>
1909         </reportSets>
1910         <configuration>
1911           <dependencyLocationsEnabled>false</dependencyLocationsEnabled>
1912         </configuration>
1913       </plugin>
1914       <plugin>
1915         <groupId>org.apache.maven.plugins</groupId>
1916         <artifactId>maven-jxr-plugin</artifactId>
1917         <version>2.3</version>
1918         <configuration>
1919           <aggregate>true</aggregate>
1920           <linkJavadoc>true</linkJavadoc>
1921           <javadocDir>${basedir}/target/site/apidocs</javadocDir>
1922           <reportOutputDirectory>${basedir}/target/site/xref</reportOutputDirectory>
1923           <destDir>${basedir}/target/site/xref</destDir>
1924           <excludes>
1925             <exclude>**/generated/**</exclude>
1926           </excludes>
1927         </configuration>
1928       </plugin>
1930       <plugin>
1931         <groupId>org.apache.maven.plugins</groupId>
1932         <artifactId>maven-javadoc-plugin</artifactId>
1933         <version>2.9.1</version>
1934         <configuration>
1935           <maxmemory>2048m</maxmemory>
1936           <notimestamp>true</notimestamp>
1937         </configuration>
1938         <reportSets>
1939           <reportSet>
1940             <id>devapi</id>
1941             <!-- full internal hbase api -->
1942             <reports>
1943               <report>aggregate</report>
1944             </reports>
1945             <configuration>
1946               <destDir>devapidocs</destDir>
1947             </configuration>
1948           </reportSet>
1950           <reportSet>
1951             <id>userapi</id>
1952             <!-- public user hbase api; limited but has stronger compat/deprecation guarantees -->
1953             <reports>
1954               <report>aggregate</report>
1955             </reports>
1956             <configuration>
1957               <doclet>
1958                 org.apache.hadoop.classification.tools.IncludePublicAnnotationsStandardDoclet
1959               </doclet>
1960               <docletArtifact>
1961                 <groupId>org.apache.hadoop</groupId>
1962                 <!-- doclet lives in hadoop 2's hadoop-common module -->
1963                 <artifactId>hadoop-common</artifactId>
1964                 <version>${hadoop-two.version}</version>
1965               </docletArtifact>
1966               <destDir>apidocs</destDir>
1967               <name>User API</name>
1968               <description>The HBase Application Programmer's API</description>
1969               <!-- exclude all the packages that are empty after the public annotation only filter -->
1970               <excludePackageNames>
1971                 org.apache.hadoop.hbase.backup*:org.apache.hadoop.hbase.catalog:org.apache.hadoop.hbase.client.coprocessor:org.apache.hadoop.hbase.client.metrics:org.apache.hadoop.hbase.codec*:org.apache.hadoop.hbase.constraint:org.apache.hadoop.hbase.coprocessor.*:org.apache.hadoop.hbase.executor:org.apache.hadoop.hbase.fs:org.apache.hadoop.hbase.generated.*:org.apache.hadoop.hbase.io.hfile.*:org.apache.hadoop.hbase.mapreduce.hadoopbackport:org.apache.hadoop.hbase.mapreduce.replication:org.apache.hadoop.hbase.master.*:org.apache.hadoop.hbase.metrics*:org.apache.hadoop.hbase.migration:org.apache.hadoop.hbase.monitoring:org.apache.hadoop.hbase.p*:org.apache.hadoop.hbase.regionserver.compactions:org.apache.hadoop.hbase.regionserver.handler:org.apache.hadoop.hbase.regionserver.snapshot:org.apache.hadoop.hbase.replication.*:org.apache.hadoop.hbase.rest.filter:org.apache.hadoop.hbase.rest.model:org.apache.hadoop.hbase.rest.p*:org.apache.hadoop.hbase.security.*:org.apache.hadoop.hbase.thrift*:org.apache.hadoop.hbase.tmpl.*:org.apache.hadoop.hbase.tool:org.apache.hadoop.hbase.trace:org.apache.hadoop.hbase.util.byterange*:org.apache.hadoop.hbase.util.test:org.apache.hadoop.hbase.util.vint:org.apache.hadoop.hbase.zookeeper.lock:org.apache.hadoop.metrics2*
1972               </excludePackageNames>
1973             </configuration>
1974           </reportSet>
1975         </reportSets>
1976       </plugin>
1978     </plugins>
1979   </reporting>
1980   <distributionManagement>
1981     <site>
1982       <id>hbase.apache.org</id>
1983       <name>HBase Website at hbase.apache.org</name>
1984       <!-- On why this is the tmp dir and not hbase.apache.org, see
1985                https://issues.apache.org/jira/browse/HBASE-7593?focusedCommentId=13555866&page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-13555866
1986                -->
1987       <url>file:///tmp</url>
1988     </site>
1989   </distributionManagement>
1990 </project>