| <?xml version="1.0" encoding="UTF-8"?> |
| <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd"> |
| <!-- |
| /** |
| * Licensed to the Apache Software Foundation (ASF) under one |
| * or more contributor license agreements. See the NOTICE file |
| * distributed with this work for additional information |
| * regarding copyright ownership. The ASF licenses this file |
| * to you under the Apache License, Version 2.0 (the |
| * "License"); you may not use this file except in compliance |
| * with the License. You may obtain a copy of the License at |
| * |
| * http://www.apache.org/licenses/LICENSE-2.0 |
| * |
| * Unless required by applicable law or agreed to in writing, software |
| * distributed under the License is distributed on an "AS IS" BASIS, |
| * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
| * See the License for the specific language governing permissions and |
| * limitations under the License. |
| */ |
| |
| |
| ON MVN COMPILE NOT WORKING |
| |
| If you wondering why 'mvn compile' does not work building HBase |
| (in particular, if you are doing it for the first time), instead do |
| 'mvn package'. If you are interested in the full story, see |
| https://issues.apache.org/jira/browse/HBASE-6795. |
| |
| --> |
| <modelVersion>4.0.0</modelVersion> |
| <parent> |
| <groupId>org.apache</groupId> |
| <artifactId>apache</artifactId> |
| <version>23</version> |
| <relativePath/> |
| <!-- no parent resolution --> |
| </parent> |
| <groupId>org.apache.hbase</groupId> |
| <artifactId>hbase</artifactId> |
| <version>${revision}</version> |
| <packaging>pom</packaging> |
| <name>Apache HBase</name> |
| <description>Apache HBase™ is the Hadoop database. Use it when you need |
| random, realtime read/write access to your Big Data. |
| This project's goal is the hosting of very large tables -- billions of rows X millions of columns -- atop clusters |
| of commodity hardware.</description> |
| <url>https://hbase.apache.org</url> |
| <inceptionYear>2007</inceptionYear> |
| <!-- Set here so we can consistently use the correct name, even on branches with |
| an ASF parent pom older than v15. Also uses the url from v18. |
| --> |
| <licenses> |
| <license> |
| <name>Apache License, Version 2.0</name> |
| <url>https://www.apache.org/licenses/LICENSE-2.0.txt</url> |
| <distribution>repo</distribution> |
| </license> |
| </licenses> |
| <developers> |
| <developer> |
| <id>achouhan</id> |
| <name>Abhishek Singh Chouhan</name> |
| <email>achouhan@apache.org</email> |
| <timezone>+5</timezone> |
| </developer> |
| <developer> |
| <id>acube123</id> |
| <name>Amitanand S. Aiyer</name> |
| <email>acube123@apache.org</email> |
| <timezone>-8</timezone> |
| </developer> |
| <developer> |
| <id>allan163</id> |
| <name>Allan Yang</name> |
| <email>allan163@apache.org</email> |
| <timezone>+8</timezone> |
| </developer> |
| <developer> |
| <id>appy</id> |
| <name>Apekshit Sharma</name> |
| <email>appy@apache.org</email> |
| <timezone>-8</timezone> |
| </developer> |
| <developer> |
| <id>anastasia</id> |
| <name>Anastasia Braginsky</name> |
| <email>anastasia@apache.org</email> |
| <timezone>+2</timezone> |
| </developer> |
| <developer> |
| <id>apurtell</id> |
| <name>Andrew Purtell</name> |
| <email>apurtell@apache.org</email> |
| <timezone>-8</timezone> |
| </developer> |
| <developer> |
| <id>anoopsamjohn</id> |
| <name>Anoop Sam John</name> |
| <email>anoopsamjohn@apache.org</email> |
| <timezone>+5</timezone> |
| </developer> |
| <developer> |
| <id>antonov</id> |
| <name>Mikhail Antonov</name> |
| <email>antonov@apache.org</email> |
| <timezone>-8</timezone> |
| </developer> |
| <developer> |
| <id>ashishsinghi</id> |
| <name>Ashish Singhi</name> |
| <email>ashishsinghi@apache.org</email> |
| <timezone>+5</timezone> |
| </developer> |
| <developer> |
| <id>ashu</id> |
| <name>Ashu Pachauri</name> |
| <email>ashu@apache.org</email> |
| <timezone>+5</timezone> |
| </developer> |
| <developer> |
| <id>bharathv</id> |
| <name>Bharath Vissapragada</name> |
| <email>bharathv@apache.org</email> |
| <timezone>-8</timezone> |
| </developer> |
| <developer> |
| <id>binlijin</id> |
| <name>Lijin Bin</name> |
| <email>binlijin@apache.org</email> |
| <timezone>+8</timezone> |
| </developer> |
| <developer> |
| <id>brfrn169</id> |
| <name>Toshihiro Suzuki</name> |
| <email>brfrn169@apache.org</email> |
| <timezone>+9</timezone> |
| </developer> |
| <developer> |
| <id>busbey</id> |
| <name>Sean Busbey</name> |
| <email>busbey@apache.org</email> |
| <timezone>-6</timezone> |
| </developer> |
| <developer> |
| <id>chenglei</id> |
| <name>Cheng Lei</name> |
| <email>chenglei@apache.org</email> |
| <timezone>+8</timezone> |
| </developer> |
| <developer> |
| <id>chenheng</id> |
| <name>Heng Chen</name> |
| <email>chenheng@apache.org</email> |
| <timezone>+8</timezone> |
| </developer> |
| <developer> |
| <id>chia7712</id> |
| <name>Chia-Ping Tsai</name> |
| <email>chia7712@apache.org</email> |
| <timezone>+8</timezone> |
| </developer> |
| <developer> |
| <id>ddas</id> |
| <name>Devaraj Das</name> |
| <email>ddas@apache.org</email> |
| <timezone>-8</timezone> |
| </developer> |
| <developer> |
| <id>dimaspivak</id> |
| <name>Dima Spivak</name> |
| <email>dimaspivak@apache.org</email> |
| <timezone>-8</timezone> |
| </developer> |
| <developer> |
| <id>dmeil</id> |
| <name>Doug Meil</name> |
| <email>dmeil@apache.org</email> |
| <timezone>-5</timezone> |
| </developer> |
| <developer> |
| <id>eclark</id> |
| <name>Elliott Clark</name> |
| <email>eclark@apache.org</email> |
| <timezone>-8</timezone> |
| </developer> |
| <developer> |
| <id>elserj</id> |
| <name>Josh Elser</name> |
| <email>elserj@apache.org</email> |
| <timezone>-5</timezone> |
| </developer> |
| <developer> |
| <id>enis</id> |
| <name>Enis Soztutar</name> |
| <email>enis@apache.org</email> |
| <timezone>-8</timezone> |
| </developer> |
| <developer> |
| <id>eshcar</id> |
| <name>Eshcar Hillel</name> |
| <email>eshcar@apache.org</email> |
| <timezone>+2</timezone> |
| </developer> |
| <developer> |
| <id>fenghh</id> |
| <name>Honghua Feng</name> |
| <email>fenghh@apache.org</email> |
| <timezone>+8</timezone> |
| </developer> |
| <developer> |
| <id>garyh</id> |
| <name>Gary Helmling</name> |
| <email>garyh@apache.org</email> |
| <timezone>-8</timezone> |
| </developer> |
| <developer> |
| <id>gchanan</id> |
| <name>Gregory Chanan</name> |
| <email>gchanan@apache.org</email> |
| <timezone>-8</timezone> |
| </developer> |
| <developer> |
| <id>gjacoby</id> |
| <name>Geoffrey Jacoby</name> |
| <email>gjacoby@apache.org</email> |
| <timezone>-5</timezone> |
| </developer> |
| <developer> |
| <id>gxcheng</id> |
| <name>Guangxu Cheng</name> |
| <email>gxcheng@apache.org</email> |
| <timezone>+8</timezone> |
| </developer> |
| <developer> |
| <id>haxiaolin</id> |
| <name>Xiaolin Ha</name> |
| <email>haxiaolin@apache.org</email> |
| <timezone>+8</timezone> |
| </developer> |
| <developer> |
| <id>huaxiangsun</id> |
| <name>Huaxiang Sun</name> |
| <email>huaxiangsun@apache.org</email> |
| <timezone>-8</timezone> |
| </developer> |
| <developer> |
| <id>huiruan</id> |
| <name>Hui Ruan</name> |
| <email>huiruan@apache.org</email> |
| <timezone>+8</timezone> |
| </developer> |
| <developer> |
| <id>jdcryans</id> |
| <name>Jean-Daniel Cryans</name> |
| <email>jdcryans@apache.org</email> |
| <timezone>-8</timezone> |
| </developer> |
| <developer> |
| <id>jeffreyz</id> |
| <name>Jeffrey Zhong</name> |
| <email>jeffreyz@apache.org</email> |
| <timezone>-8</timezone> |
| </developer> |
| <developer> |
| <id>jerryjch</id> |
| <name>Jing Chen (Jerry) He</name> |
| <email>jerryjch@apache.org</email> |
| <timezone>-8</timezone> |
| </developer> |
| <developer> |
| <id>jyates</id> |
| <name>Jesse Yates</name> |
| <email>jyates@apache.org</email> |
| <timezone>-8</timezone> |
| </developer> |
| <developer> |
| <id>jgray</id> |
| <name>Jonathan Gray</name> |
| <email>jgray@fb.com</email> |
| <timezone>-8</timezone> |
| </developer> |
| <developer> |
| <id>jingchengdu</id> |
| <name>Jingcheng Du</name> |
| <email>jingchengdu@apache.org</email> |
| <timezone>+8</timezone> |
| </developer> |
| <developer> |
| <id>esteban</id> |
| <name>Esteban Gutierrez</name> |
| <email>esteban@apache.org</email> |
| <timezone>-8</timezone> |
| </developer> |
| <developer> |
| <id>janh</id> |
| <name>Jan Hentschel</name> |
| <email>janh@apache.org</email> |
| <timezone>+1</timezone> |
| </developer> |
| <developer> |
| <id>jmhsieh</id> |
| <name>Jonathan Hsieh</name> |
| <email>jmhsieh@apache.org</email> |
| <timezone>-8</timezone> |
| </developer> |
| <developer> |
| <id>jxiang</id> |
| <name>Jimmy Xiang</name> |
| <email>jxiang@apache.org</email> |
| <timezone>-8</timezone> |
| </developer> |
| <developer> |
| <id>kannan</id> |
| <name>Kannan Muthukkaruppan</name> |
| <email>kannan@fb.com</email> |
| <timezone>-8</timezone> |
| </developer> |
| <developer> |
| <id>karthik</id> |
| <name>Karthik Ranganathan</name> |
| <email>kranganathan@fb.com</email> |
| <timezone>-8</timezone> |
| </developer> |
| <developer> |
| <id>larsfrancke</id> |
| <name>Lars Francke</name> |
| <email>larsfrancke@apache.org</email> |
| <timezone>Europe/Berlin</timezone> |
| </developer> |
| <developer> |
| <id>larsgeorge</id> |
| <name>Lars George</name> |
| <email>larsgeorge@apache.org</email> |
| <timezone>+1</timezone> |
| </developer> |
| <developer> |
| <id>larsh</id> |
| <name>Lars Hofhansl</name> |
| <email>larsh@apache.org</email> |
| <timezone>-8</timezone> |
| </developer> |
| <developer> |
| <id>liangxie</id> |
| <name>Liang Xie</name> |
| <email>liangxie@apache.org</email> |
| <timezone>+8</timezone> |
| </developer> |
| <developer> |
| <id>liushaohui</id> |
| <name>Shaohui Liu</name> |
| <email>liushaohui@apache.org</email> |
| <timezone>+8</timezone> |
| </developer> |
| <developer> |
| <id>liyin</id> |
| <name>Liyin Tang</name> |
| <email>liyin.tang@fb.com</email> |
| <timezone>-8</timezone> |
| </developer> |
| <developer> |
| <id>liyu</id> |
| <name>Yu Li</name> |
| <email>liyu@apache.org</email> |
| <timezone>+8</timezone> |
| </developer> |
| <developer> |
| <id>mbautin</id> |
| <name>Mikhail Bautin</name> |
| <email>mbautin@apache.org</email> |
| <timezone>-8</timezone> |
| </developer> |
| <developer> |
| <id>mbertozzi</id> |
| <name>Matteo Bertozzi</name> |
| <email>mbertozzi@apache.org</email> |
| <timezone>0</timezone> |
| </developer> |
| <developer> |
| <id>mdrob</id> |
| <name>Mike Drob</name> |
| <email>mdrob@apache.org</email> |
| <timezone>-5</timezone> |
| </developer> |
| <developer> |
| <id>meszibalu</id> |
| <name>Balazs Meszaros</name> |
| <email>meszibalu@apache.org</email> |
| <timezone>+1</timezone> |
| </developer> |
| <developer> |
| <id>misty</id> |
| <name>Misty Stanley-Jones</name> |
| <email>misty@apache.org</email> |
| <timezone>-8</timezone> |
| </developer> |
| <developer> |
| <id>ndimiduk</id> |
| <name>Nick Dimiduk</name> |
| <email>ndimiduk@apache.org</email> |
| <timezone>-8</timezone> |
| </developer> |
| <developer> |
| <id>nihaljain</id> |
| <name>Nihal Jain</name> |
| <email>nihaljain@apache.org</email> |
| <timezone>+5</timezone> |
| </developer> |
| <developer> |
| <id>niuyulin</id> |
| <name>Yulin Niu</name> |
| <email>niuyulin@apache.org</email> |
| <timezone>+8</timezone> |
| </developer> |
| <developer> |
| <id>nkeywal</id> |
| <name>Nicolas Liochon</name> |
| <email>nkeywal@apache.org</email> |
| <timezone>+1</timezone> |
| </developer> |
| <developer> |
| <id>nspiegelberg</id> |
| <name>Nicolas Spiegelberg</name> |
| <email>nspiegelberg@fb.com</email> |
| <timezone>-8</timezone> |
| </developer> |
| <developer> |
| <id>octo47</id> |
| <name>Andrey Stepachev</name> |
| <email>octo47@gmail.com</email> |
| <timezone>0</timezone> |
| </developer> |
| <developer> |
| <id>openinx</id> |
| <name>Zheng Hu</name> |
| <email>openinx@apache.org</email> |
| <timezone>+8</timezone> |
| </developer> |
| <developer> |
| <id>pankajkumar</id> |
| <name>Pankaj Kumar</name> |
| <email>pankajkumar@apache.org</email> |
| <timezone>+5</timezone> |
| </developer> |
| <developer> |
| <id>psomogyi</id> |
| <name>Peter Somogyi</name> |
| <email>psomogyi@apache.org</email> |
| <timezone>+1</timezone> |
| </developer> |
| <developer> |
| <id>rajeshbabu</id> |
| <name>Rajeshbabu Chintaguntla</name> |
| <email>rajeshbabu@apache.org</email> |
| <timezone>+5</timezone> |
| </developer> |
| <developer> |
| <id>ramkrishna</id> |
| <name>Ramkrishna S Vasudevan</name> |
| <email>ramkrishna@apache.org</email> |
| <timezone>+5</timezone> |
| </developer> |
| <developer> |
| <id>rawson</id> |
| <name>Ryan Rawson</name> |
| <email>rawson@apache.org</email> |
| <timezone>-8</timezone> |
| </developer> |
| <developer> |
| <id>reidchan</id> |
| <name>Reid Chan</name> |
| <email>reidchan@apache.org</email> |
| <timezone>+8</timezone> |
| </developer> |
| <developer> |
| <id>shahrs87</id> |
| <name>Rushabh Shah</name> |
| <email>shahrs87@apache.org</email> |
| <timezone>-8</timezone> |
| </developer> |
| <developer> |
| <id>sakthi</id> |
| <name>Sakthi Vel</name> |
| <email>sakthi@apache.org</email> |
| <timezone>-8</timezone> |
| </developer> |
| <developer> |
| <id>sershe</id> |
| <name>Sergey Shelukhin</name> |
| <email>sershe@apache.org</email> |
| <timezone>-8</timezone> |
| </developer> |
| <developer> |
| <id>ssrungarapu</id> |
| <name>Srikanth Srungarapu</name> |
| <email>ssrungarapu@apache.org</email> |
| <timezone>-8</timezone> |
| </developer> |
| <developer> |
| <id>stack</id> |
| <name>Michael Stack</name> |
| <email>stack@apache.org</email> |
| <timezone>-8</timezone> |
| </developer> |
| <developer> |
| <id>stoty</id> |
| <name>Istvan Toth</name> |
| <email>stoty@apache.org</email> |
| <timezone>+1</timezone> |
| </developer> |
| <developer> |
| <id>syuanjiang</id> |
| <name>Stephen Yuan Jiang</name> |
| <email>syuanjiang@apache.org</email> |
| <timezone>-8</timezone> |
| </developer> |
| <developer> |
| <id>taklwu</id> |
| <name>Tak-Lon (Stephen) Wu</name> |
| <email>taklwu@apache.org</email> |
| <timezone>-8</timezone> |
| </developer> |
| <developer> |
| <id>tedyu</id> |
| <name>Ted Yu</name> |
| <email>yuzhihong@gmail.com</email> |
| <timezone>-8</timezone> |
| </developer> |
| <developer> |
| <id>tianhang</id> |
| <name>Tianhang Tang</name> |
| <email>tianhang@apache.org</email> |
| <timezone>+8</timezone> |
| </developer> |
| <developer> |
| <id>tianjy</id> |
| <email>tianjy@apache.org</email> |
| <timezone>+8</timezone> |
| </developer> |
| <developer> |
| <id>todd</id> |
| <name>Todd Lipcon</name> |
| <email>todd@apache.org</email> |
| <timezone>-8</timezone> |
| </developer> |
| <developer> |
| <id>toffer</id> |
| <name>Francis Liu</name> |
| <email>toffer@apache.org</email> |
| <timezone>-8</timezone> |
| </developer> |
| <developer> |
| <id>vikasv</id> |
| <name>Vikas Vishwakarma</name> |
| <email>vikasv@apache.org</email> |
| <timezone>+5</timezone> |
| </developer> |
| <developer> |
| <id>virag</id> |
| <name>Virag Kothari</name> |
| <email>virag@yahoo-inc.com</email> |
| <timezone>-8</timezone> |
| </developer> |
| <developer> |
| <id>vjasani</id> |
| <name>Viraj Jasani</name> |
| <email>vjasani@apache.org</email> |
| <timezone>+5</timezone> |
| </developer> |
| <developer> |
| <id>water</id> |
| <name>Xiang Li</name> |
| <email>xiangli@apache.org</email> |
| <timezone>+8</timezone> |
| </developer> |
| <developer> |
| <id>wchevreuil</id> |
| <name>Wellington Chevreuil</name> |
| <email>wchevreuil@apache.org</email> |
| <timezone>0</timezone> |
| </developer> |
| <developer> |
| <id>weichiu</id> |
| <name>Wei-Chiu Chuang</name> |
| <email>weichiu@apache.org</email> |
| <timezone>-8</timezone> |
| </developer> |
| <developer> |
| <id>xucang</id> |
| <name>Xu Cang</name> |
| <email>xucang@apache.org</email> |
| <timezone>-8</timezone> |
| </developer> |
| <developer> |
| <id>yangzhe1991</id> |
| <name>Phil Yang</name> |
| <email>yangzhe1991@apache.org</email> |
| <timezone>+8</timezone> |
| </developer> |
| <developer> |
| <id>zghao</id> |
| <name>Guanghao Zhang</name> |
| <email>zghao@apache.org</email> |
| <timezone>+8</timezone> |
| </developer> |
| <developer> |
| <id>zhangduo</id> |
| <name>Duo Zhang</name> |
| <email>zhangduo@apache.org</email> |
| <timezone>+8</timezone> |
| </developer> |
| <developer> |
| <id>zhaobaiqiang</id> |
| <name>Baiqiang Zhao</name> |
| <email>zhaobaiqiang@apache.org</email> |
| <timezone>+8</timezone> |
| </developer> |
| <developer> |
| <id>zjushch</id> |
| <name>Chunhui Shen</name> |
| <email>zjushch@apache.org</email> |
| <timezone>+8</timezone> |
| </developer> |
| <developer> |
| <id>churro</id> |
| <name>Rahul Gidwani</name> |
| <email>churro@apache.org</email> |
| <timezone>-8</timezone> |
| </developer> |
| <developer> |
| <id>yiliang</id> |
| <name>Yi Liang</name> |
| <email>yiliang@apache.org</email> |
| <timezone>-8</timezone> |
| </developer> |
| <developer> |
| <id>zyork</id> |
| <name>Zach York</name> |
| <email>zyork@apache.org</email> |
| <timezone>-8</timezone> |
| </developer> |
| <developer> |
| <id>meiyi</id> |
| <name>Yi Mei</name> |
| <email>meiyi@apache.org</email> |
| <timezone>+8</timezone> |
| </developer> |
| <developer> |
| <id>wangzheng</id> |
| <name>Zheng (bsglz) Wang</name> |
| <email>wangzheng@apache.org</email> |
| <timezone>+8</timezone> |
| </developer> |
| <developer> |
| <id>sunxin</id> |
| <name>Xin Sun</name> |
| <email>sunxin@apache.org</email> |
| <timezone>+8</timezone> |
| </developer> |
| <developer> |
| <id>huangzhuoyue</id> |
| <name>Zhuoyue Huang</name> |
| <email>huangzhuoyue@apache.org</email> |
| <timezone>+8</timezone> |
| </developer> |
| <developer> |
| <id>xiaoyt</id> |
| <name>Yutong Xiao</name> |
| <email>xiaoyt@apache.org</email> |
| <timezone>+8</timezone> |
| </developer> |
| <developer> |
| <id>bbeaudreault</id> |
| <name>Bryan Beaudreault</name> |
| <email>bbeaudreault@apache.org</email> |
| <timezone>-5</timezone> |
| </developer> |
| <developer> |
| <id>heliangjun</id> |
| <name>Liangjun He</name> |
| <email>heliangjun@apache.org</email> |
| <timezone>+8</timezone> |
| </developer> |
| </developers> |
| <mailingLists> |
| <mailingList> |
| <name>User List</name> |
| <subscribe>user-subscribe@hbase.apache.org</subscribe> |
| <unsubscribe>user-unsubscribe@hbase.apache.org</unsubscribe> |
| <post>user@hbase.apache.org</post> |
| <archive>https://lists.apache.org/list.html?user@hbase.apache.org</archive> |
| <otherArchives> |
| <otherArchive>https://dir.gmane.org/gmane.comp.java.hadoop.hbase.user</otherArchive> |
| </otherArchives> |
| </mailingList> |
| <mailingList> |
| <name>Developer List</name> |
| <subscribe>dev-subscribe@hbase.apache.org</subscribe> |
| <unsubscribe>dev-unsubscribe@hbase.apache.org</unsubscribe> |
| <post>dev@hbase.apache.org</post> |
| <archive>https://lists.apache.org/list.html?dev@hbase.apache.org</archive> |
| <otherArchives> |
| <otherArchive>https://dir.gmane.org/gmane.comp.java.hadoop.hbase.devel</otherArchive> |
| </otherArchives> |
| </mailingList> |
| <mailingList> |
| <name>Commits List</name> |
| <subscribe>commits-subscribe@hbase.apache.org</subscribe> |
| <unsubscribe>commits-unsubscribe@hbase.apache.org</unsubscribe> |
| <archive>https://lists.apache.org/list.html?commits@hbase.apache.org</archive> |
| </mailingList> |
| <mailingList> |
| <name>Issues List</name> |
| <subscribe>issues-subscribe@hbase.apache.org</subscribe> |
| <unsubscribe>issues-unsubscribe@hbase.apache.org</unsubscribe> |
| <archive>https://lists.apache.org/list.html?issues@hbase.apache.org</archive> |
| </mailingList> |
| <mailingList> |
| <name>Builds List</name> |
| <subscribe>builds-subscribe@hbase.apache.org</subscribe> |
| <unsubscribe>builds-unsubscribe@hbase.apache.org</unsubscribe> |
| <archive>https://lists.apache.org/list.html?builds@hbase.apache.org</archive> |
| </mailingList> |
| <mailingList> |
| <name>User (ZH) List</name> |
| <subscribe>user-zh-subscribe@hbase.apache.org</subscribe> |
| <unsubscribe>user-zh-unsubscribe@hbase.apache.org</unsubscribe> |
| <post>user-zh@hbase.apache.org</post> |
| <archive>https://lists.apache.org/list.html?user-zh@hbase.apache.org</archive> |
| </mailingList> |
| </mailingLists> |
| |
| <modules> |
| <module>hbase-build-configuration</module> |
| <module>hbase-replication</module> |
| <module>hbase-balancer</module> |
| <module>hbase-mapreduce</module> |
| <module>hbase-resource-bundle</module> |
| <module>hbase-http</module> |
| <module>hbase-server</module> |
| <module>hbase-thrift</module> |
| <module>hbase-shell</module> |
| <module>hbase-protocol-shaded</module> |
| <module>hbase-client</module> |
| <module>hbase-hadoop-compat</module> |
| <module>hbase-common</module> |
| <module>hbase-procedure</module> |
| <module>hbase-endpoint</module> |
| <module>hbase-it</module> |
| <module>hbase-examples</module> |
| <module>hbase-assembly</module> |
| <module>hbase-testing-util</module> |
| <module>hbase-annotations</module> |
| <module>hbase-rest</module> |
| <module>hbase-checkstyle</module> |
| <module>hbase-external-blockcache</module> |
| <module>hbase-shaded</module> |
| <module>hbase-archetypes</module> |
| <module>hbase-metrics-api</module> |
| <module>hbase-metrics</module> |
| <module>hbase-backup</module> |
| <module>hbase-zookeeper</module> |
| <module>hbase-hbtop</module> |
| <module>hbase-asyncfs</module> |
| <module>hbase-logging</module> |
| <module>hbase-compression</module> |
| <module>hbase-extensions</module> |
| </modules> |
| <scm> |
| <connection>scm:git:git://gitbox.apache.org/repos/asf/hbase.git</connection> |
| <developerConnection>scm:git:https://gitbox.apache.org/repos/asf/hbase.git</developerConnection> |
| <url>https://gitbox.apache.org/repos/asf?p=hbase.git</url> |
| </scm> |
| <issueManagement> |
| <system>JIRA</system> |
| <url>https://issues.apache.org/jira/browse/HBASE</url> |
| </issueManagement> |
| <distributionManagement> |
| <site> |
| <id>hbase.apache.org</id> |
| <name>HBase Website at hbase.apache.org</name> |
| <!-- On why this is the tmp dir and not hbase.apache.org, see |
| https://issues.apache.org/jira/browse/HBASE-7593?focusedCommentId=13555866&page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-13555866 |
| --> |
| <url>file:///tmp</url> |
| </site> |
| </distributionManagement> |
| <properties> |
| <revision>4.0.0-alpha-1-SNAPSHOT</revision> |
| <!-- override on command line to have generated LICENSE files include |
| diagnostic info for verifying notice requirements --> |
| <license.debug.print.included>false</license.debug.print.included> |
| <!-- When a particular module bundles its depenendencies, should be true --> |
| <license.bundles.dependencies>false</license.bundles.dependencies> |
| <!-- modules that include a the logo in their source tree should set true --> |
| <license.bundles.logo>false</license.bundles.logo> |
| <!-- modules that include bootstrap in their source tree should set true --> |
| <license.bundles.bootstrap>false</license.bundles.bootstrap> |
| <!-- modules that include jquery in their source tree should set true --> |
| <license.bundles.jquery>false</license.bundles.jquery> |
| <!-- modules that include vega in their source tree should set true --> |
| <license.bundles.vega>false</license.bundles.vega> |
| <tar.name>${project.build.finalName}.tar.gz</tar.name> |
| <maven.build.timestamp.format>yyyy-MM-dd'T'HH:mm</maven.build.timestamp.format> |
| <buildDate>${maven.build.timestamp}</buildDate> |
| <compileSource>1.8</compileSource> |
| <releaseTarget>8</releaseTarget> |
| <!-- Build dependencies --> |
| <!-- The $revision feature is introduced in 3.5.0 --> |
| <maven.min.version>3.5.0</maven.min.version> |
| <java.min.version>${compileSource}</java.min.version> |
| <!-- Dependencies --> |
| <hadoop-three.version>3.3.5</hadoop-three.version> |
| <!-- These must be defined here for downstream build tools that don't look at profiles. |
| --> |
| <hadoop.version>${hadoop-three.version}</hadoop.version> |
| <assembly.file>src/main/assembly/hadoop-three-compat.xml</assembly.file> |
| <!-- |
| These property is for transitive netty dependencies from thirdparty dependencies, like |
| hadoop and zookeeper. HBase netty comes in via hbase-thirdparty hbase-shaded-netty |
| In the old time, netty-all includes all the classes but maven does not know it so it is |
| possible that we have netty-all and netty-handler both on the classpath but they have |
| different version and cause conflicts. Newer version of netty-all solved the this problem |
| by depending all other netty modules, but we'd better still specify the version by our own |
| in the dependencyManagement section as it could still lead to different versions of netty |
| modules and cause trouble if we only rely on transitive dependencies. |
| --> |
| <netty3.version>3.10.6.Final</netty3.version> |
| <netty4.version>4.1.100.Final</netty4.version> |
| <!-- end HBASE-15925 default hadoop compatibility values --> |
| <audience-annotations.version>0.13.0</audience-annotations.version> |
| <!-- |
| The version used when generating javadoc, 0.13.0 is the latest version which supports jdk8. |
| When building with jdk11, we will use 0.14.1, please see the build-with-jdk11 profile. |
| --> |
| <javadoc.audience-annotations.version>0.13.0</javadoc.audience-annotations.version> |
| <avro.version>1.11.3</avro.version> |
| <caffeine.version>2.8.1</caffeine.version> |
| <commons-codec.version>1.15</commons-codec.version> |
| <commons-validator.version>1.7</commons-validator.version> |
| <commons-io.version>2.11.0</commons-io.version> |
| <commons-lang3.version>3.9</commons-lang3.version> |
| <commons-math.version>3.6.1</commons-math.version> |
| <commons-cli.version>1.5.0</commons-cli.version> |
| <disruptor.version>3.4.4</disruptor.version> |
| <httpclient.version>4.5.13</httpclient.version> |
| <httpcore.version>4.4.13</httpcore.version> |
| <metrics-core.version>3.2.6</metrics-core.version> |
| <!-- |
| Note that the version of jackson-[annotations,core,databind] must be kept in sync with the |
| version of jackson-jaxrs-json-provider shipped in hbase-thirdparty. |
| --> |
| <jackson.version>2.16.1</jackson.version> |
| <jackson.databind.version>2.16.1</jackson.databind.version> |
| <jaxb-api.version>2.3.1</jaxb-api.version> |
| <servlet.api.version>3.1.0</servlet.api.version> |
| <wx.rs.api.version>2.1.1</wx.rs.api.version> |
| <glassfish.jsp.version>2.3.2</glassfish.jsp.version> |
| <glassfish.el.version>3.0.1-b08</glassfish.el.version> |
| <jruby.version>9.3.13.0</jruby.version> |
| <junit.version>4.13.2</junit.version> |
| <hamcrest.version>1.3</hamcrest.version> |
| <opentelemetry.version>1.15.0</opentelemetry.version> |
| <opentelemetry-javaagent.version>1.15.0</opentelemetry-javaagent.version> |
| <log4j2.version>2.17.2</log4j2.version> |
| <mockito.version>4.11.0</mockito.version> |
| <protobuf.plugin.version>0.6.1</protobuf.plugin.version> |
| <thrift.path>thrift</thrift.path> |
| <thrift.version>0.14.1</thrift.version> |
| <zookeeper.version>3.8.4</zookeeper.version> |
| <jline.version>2.11</jline.version> |
| <slf4j.version>1.7.30</slf4j.version> |
| <clover.version>4.0.3</clover.version> |
| <jamon-runtime.version>2.4.1</jamon-runtime.version> |
| <jettison.version>1.5.4</jettison.version> |
| <!--Make sure these joni/jcodings are compatible with the versions used by jruby--> |
| <joni.version>2.2.1</joni.version> |
| <jcodings.version>1.0.58</jcodings.version> |
| <spy.version>2.12.2</spy.version> |
| <bouncycastle.version>1.76</bouncycastle.version> |
| <skyscreamer.version>1.5.1</skyscreamer.version> |
| <kerby.version>1.0.1</kerby.version> |
| <commons-crypto.version>1.1.0</commons-crypto.version> |
| <curator.version>4.2.0</curator.version> |
| <!-- Plugin Dependencies --> |
| <asciidoctor.plugin.version>2.2.2</asciidoctor.plugin.version> |
| <asciidoctorj.pdf.version>2.0.6</asciidoctorj.pdf.version> |
| <build.helper.maven.version>3.0.0</build.helper.maven.version> |
| <buildnumber.maven.version>1.4</buildnumber.maven.version> |
| <!-- |
| When updating checkstyle.version, please make the same change in `.idea/checkstyle-idea.xml` |
| --> |
| <checkstyle.version>8.29</checkstyle.version> |
| <exec.maven.version>3.1.0</exec.maven.version> |
| <error-prone.version>2.16</error-prone.version> |
| <jamon.plugin.version>2.4.2</jamon.plugin.version> |
| <lifecycle.mapping.version>1.0.0</lifecycle.mapping.version> |
| <maven.antrun.version>1.8</maven.antrun.version> |
| <maven.bundle.version>3.3.0</maven.bundle.version> |
| <maven.checkstyle.version>3.1.0</maven.checkstyle.version> |
| <maven.eclipse.version>2.10</maven.eclipse.version> |
| <maven.gpg.version>3.0.1</maven.gpg.version> |
| <maven.javadoc.version>3.4.0</maven.javadoc.version> |
| <maven.warbucks.version>1.1.0</maven.warbucks.version> |
| <maven.project.info.report.version>3.1.2</maven.project.info.report.version> |
| <os.maven.version>1.5.0.Final</os.maven.version> |
| <findbugs-annotations.version>1.3.9-1</findbugs-annotations.version> |
| <spotbugs.version>4.7.3</spotbugs.version> |
| <spotbugs.maven.version>4.7.2.1</spotbugs.maven.version> |
| <surefire.version>3.1.0</surefire.version> |
| <wagon.ssh.version>2.12</wagon.ssh.version> |
| <xml.maven.version>1.0.1</xml.maven.version> |
| <spotless.version>2.27.2</spotless.version> |
| <maven-site.version>3.12.0</maven-site.version> |
| <!-- compression --> |
| <aircompressor.version>0.24</aircompressor.version> |
| <brotli4j.version>1.11.0</brotli4j.version> |
| <lz4.version>1.8.0</lz4.version> |
| <snappy.version>1.1.10.4</snappy.version> |
| <xz.version>1.9</xz.version> |
| <zstd-jni.version>1.5.5-2</zstd-jni.version> |
| <!-- |
| Note that the version of protobuf shipped in hbase-thirdparty must match the version used |
| in hbase-protocol-shaded and hbase-examples. The version of jackson-[annotations,core, |
| databind] must be kept in sync with the version of jackson-jaxrs-json-provider shipped in |
| hbase-thirdparty. |
| --> |
| <hbase-thirdparty.version>4.1.6</hbase-thirdparty.version> |
| <!-- Coverage properties --> |
| <jacoco.version>0.8.8</jacoco.version> |
| <jacocoArgLine/> |
| <sonar-maven-plugin.version>3.9.1.2184</sonar-maven-plugin.version> |
| <!-- Intraproject jar naming properties --> |
| <!-- TODO this is pretty ugly, but works for the moment. |
| Modules are pretty heavy-weight things, so doing this work isn't too bad. --> |
| <server.test.jar>hbase-server-${project.version}-tests.jar</server.test.jar> |
| <common.test.jar>hbase-common-${project.version}-tests.jar</common.test.jar> |
| <procedure.test.jar>hbase-procedure-${project.version}-tests.jar</procedure.test.jar> |
| <it.test.jar>hbase-it-${project.version}-tests.jar</it.test.jar> |
| <annotations.test.jar>hbase-annotations-${project.version}-tests.jar</annotations.test.jar> |
| <mapreduce.test.jar>hbase-mapreduce-${project.version}-tests.jar</mapreduce.test.jar> |
| <zookeeper.test.jar>hbase-zookeeper-${project.version}-tests.jar</zookeeper.test.jar> |
| <asyncfs.test.jar>hbase-asyncfs-${project.version}-tests.jar</asyncfs.test.jar> |
| <shell-executable>bash</shell-executable> |
| <surefire.provider>surefire-junit47</surefire.provider> |
| <!-- default: run small & medium, medium with 2 threads --> |
| <surefire.skipFirstPart>false</surefire.skipFirstPart> |
| <surefire.skipSecondPart>false</surefire.skipSecondPart> |
| <!-- Fork count varies w/ CPU count. Setting is conservative mostly determined |
| by what apache jenkins nightly builds will tolerate (See HBASE-24072). Up this |
| value is you want to burn through tests faster (could make for more failures |
| if more contention around resources). There is a matching MAVEN_ARG |
| in our yetus personality where we set the maven -T command to 0.25C too. |
| For example, to run at a rate that is more furious than our 0.25C, do |
| something like this: |
| f="0.5C" ; mvn -T$f -Dsurefire.firstPartForkCount=$f -Dsurefire.secondPartForkCount=$f test -PrunAllTests |
| --> |
| <surefire.firstPartForkCount>0.25C</surefire.firstPartForkCount> |
| <surefire.secondPartForkCount>0.25C</surefire.secondPartForkCount> |
| <surefire.firstPartGroups>org.apache.hadoop.hbase.testclassification.SmallTests</surefire.firstPartGroups> |
| <surefire.secondPartGroups>org.apache.hadoop.hbase.testclassification.MediumTests</surefire.secondPartGroups> |
| <surefire.testFailureIgnore>false</surefire.testFailureIgnore> |
| <test.output.tofile>true</test.output.tofile> |
| <surefire.timeout>900</surefire.timeout> |
| <test.exclude.pattern/> |
| <!-- |
| Use -Dsurefire.Xmx=xxg to run tests with different JVM Xmx value. |
| This value is managed separately for jdk11. See below. |
| --> |
| <surefire.Xmx>2200m</surefire.Xmx> |
| <surefire.Xms>1000m</surefire.Xms> |
| |
| <surefire.cygwinXmx>2200m</surefire.cygwinXmx> |
| <surefire.cygwinXms>1000m</surefire.cygwinXms> |
| <!--Mark our test runs with '-Dhbase.build.id' so we can identify a surefire test as ours in a process listing |
| |
| And for netty eventloops that have no explicit configuration, netty sets |
| nioeventloopgroup thread count to CPU count * 2. Thats too much for mini |
| clusters/tests. |
| --> |
| <hbase-surefire.argLine>-enableassertions -Dhbase.build.id=${build.id} -Xmx${surefire.Xmx} |
| -Xms${surefire.Xms} -Djava.security.egd=file:/dev/./urandom -Djava.net.preferIPv4Stack=true |
| -Djava.awt.headless=true -Djdk.net.URLClassPath.disableClassPathURLCheck=true |
| -Dorg.apache.hbase.thirdparty.io.netty.leakDetection.level=advanced |
| -Dio.netty.eventLoopThreads=3 -Dio.opentelemetry.context.enableStrictContext=true</hbase-surefire.argLine> |
| <hbase-surefire.cygwin-argLine>-enableassertions -Xmx${surefire.cygwinXmx} |
| -Xms${surefire.cygwinXms} -Djava.security.egd=file:/dev/./urandom -Djava.net.preferIPv4Stack=true |
| "-Djava.library.path=${hadoop.library.path};${java.library.path}" |
| -Dorg.apache.hbase.thirdparty.io.netty.leakDetection.level=advanced |
| -Dio.opentelemetry.context.enableStrictContext=true</hbase-surefire.cygwin-argLine> |
| <!-- Keep these options in sync with add_jdk11_jvm_flags() in bin/hbase. |
| Currently, all of these options are known to be required by HBase, and not the test cases --> |
| <hbase-surefire.jdk11.flags>-Dorg.apache.hbase.thirdparty.io.netty.tryReflectionSetAccessible=true |
| --add-modules jdk.unsupported |
| --add-opens java.base/java.io=ALL-UNNAMED |
| --add-opens java.base/java.nio=ALL-UNNAMED |
| --add-opens java.base/sun.nio.ch=ALL-UNNAMED |
| --add-opens java.base/java.lang=ALL-UNNAMED |
| --add-opens java.base/jdk.internal.ref=ALL-UNNAMED |
| --add-opens java.base/java.lang.reflect=ALL-UNNAMED |
| --add-opens java.base/java.util=ALL-UNNAMED |
| --add-opens java.base/java.util.concurrent=ALL-UNNAMED |
| --add-exports java.base/jdk.internal.misc=ALL-UNNAMED |
| --add-exports java.security.jgss/sun.security.krb5=ALL-UNNAMED |
| --add-exports java.base/sun.net.dns=ALL-UNNAMED |
| --add-exports java.base/sun.net.util=ALL-UNNAMED</hbase-surefire.jdk11.flags> |
| <!-- java.base/jdk.internal.util.random=ALL-UNNAMED is required by the test code, so we do not |
| need this in bin/hbase --> |
| <hbase-surefire.jdk17.flags>--add-opens java.base/jdk.internal.util.random=ALL-UNNAMED |
| --add-opens java.base/sun.security.x509=ALL-UNNAMED |
| --add-opens java.base/sun.security.util=ALL-UNNAMED</hbase-surefire.jdk17.flags> |
| <!-- Surefire argLine defaults to Linux, cygwin argLine is used in the os.windows profile --> |
| <argLine>${hbase-surefire.argLine} @{jacocoArgLine}</argLine> |
| <extra.enforcer.version>1.5.1</extra.enforcer.version> |
| <enforcer.version>3.0.0</enforcer.version> |
| <restrict-imports.enforcer.version>0.14.0</restrict-imports.enforcer.version> |
| <!-- Location of test resources --> |
| <test.build.classes>${project.build.directory}/test-classes</test.build.classes> |
| <test.tmp.dir>${project.build.directory}</test.tmp.dir> |
| <maven.build.timestamp.format>yyyy-MM-dd'T'HH:mm:ss'Z'</maven.build.timestamp.format> |
| <!--This build.id we'll add as flag so can identify which forked processes belong to our build. |
| Default is the build start timestamp. Up on jenkins pass in the jenkins build id by setting |
| this parameter by invoking mvn with -Dbuild.id=$BUILD_ID--> |
| <build.id>${maven.build.timestamp}</build.id> |
| <shell-executable>bash</shell-executable> |
| <!-- Still need this to ignore some errors when building javadoc--> |
| <doclint>none</doclint> |
| <!-- Required for testing LDAP integration --> |
| <apacheds.version>2.0.0.AM26</apacheds.version> |
| <ldap-api.version>2.0.0</ldap-api.version> |
| </properties> |
| <!-- Sorted by groups of dependencies then groupId and artifactId --> |
| <dependencyManagement> |
| <dependencies> |
| <!-- |
| Note: There are a few exclusions to prevent duplicate code in different jars to be included: |
| org.mortbay.jetty:servlet-api, javax.servlet:servlet-api: These are excluded because they are |
| the same implementations. I chose org.mortbay.jetty:servlet-api-2.5 instead, which is a third |
| implementation of the same, because Hadoop also uses this version |
| javax.servlet:jsp-api in favour of javax.servlet.jsp:javax.servlet.jsp-api:2.3.1 since it |
| is what glassfish's jspC jar uses and that's where we get our own need for a jsp-api. |
| --> |
| <!-- Intra-module dependencies --> |
| <dependency> |
| <groupId>org.apache.hbase</groupId> |
| <artifactId>hbase-annotations</artifactId> |
| <version>${project.version}</version> |
| <type>test-jar</type> |
| <!--Was test scope only but if we want to run hbase-it tests, need the annotations test jar--> |
| </dependency> |
| <dependency> |
| <groupId>org.apache.hbase</groupId> |
| <artifactId>hbase-backup</artifactId> |
| <version>${project.version}</version> |
| </dependency> |
| <dependency> |
| <groupId>org.apache.hbase</groupId> |
| <artifactId>hbase-common</artifactId> |
| <version>${project.version}</version> |
| </dependency> |
| <dependency> |
| <groupId>org.apache.hbase</groupId> |
| <artifactId>hbase-common</artifactId> |
| <version>${project.version}</version> |
| <type>test-jar</type> |
| <scope>test</scope> |
| </dependency> |
| <dependency> |
| <groupId>org.apache.hbase</groupId> |
| <artifactId>hbase-logging</artifactId> |
| <version>${project.version}</version> |
| </dependency> |
| <dependency> |
| <groupId>org.apache.hbase</groupId> |
| <artifactId>hbase-logging</artifactId> |
| <version>${project.version}</version> |
| <type>test-jar</type> |
| <scope>test</scope> |
| </dependency> |
| <dependency> |
| <groupId>org.apache.hbase</groupId> |
| <artifactId>hbase-protocol-shaded</artifactId> |
| <version>${project.version}</version> |
| </dependency> |
| <dependency> |
| <groupId>org.apache.hbase</groupId> |
| <artifactId>hbase-procedure</artifactId> |
| <version>${project.version}</version> |
| </dependency> |
| <dependency> |
| <groupId>org.apache.hbase</groupId> |
| <artifactId>hbase-procedure</artifactId> |
| <version>${project.version}</version> |
| <type>test-jar</type> |
| </dependency> |
| <dependency> |
| <groupId>org.apache.hbase</groupId> |
| <artifactId>hbase-hadoop-compat</artifactId> |
| <version>${project.version}</version> |
| </dependency> |
| <dependency> |
| <groupId>org.apache.hbase</groupId> |
| <artifactId>hbase-hadoop-compat</artifactId> |
| <version>${project.version}</version> |
| <type>test-jar</type> |
| </dependency> |
| <dependency> |
| <groupId>org.apache.hbase</groupId> |
| <artifactId>hbase-replication</artifactId> |
| <version>${project.version}</version> |
| </dependency> |
| <dependency> |
| <groupId>org.apache.hbase</groupId> |
| <artifactId>hbase-replication</artifactId> |
| <version>${project.version}</version> |
| <type>test-jar</type> |
| </dependency> |
| <dependency> |
| <groupId>org.apache.hbase</groupId> |
| <artifactId>hbase-balancer</artifactId> |
| <version>${project.version}</version> |
| </dependency> |
| <dependency> |
| <groupId>org.apache.hbase</groupId> |
| <artifactId>hbase-balancer</artifactId> |
| <version>${project.version}</version> |
| <type>test-jar</type> |
| <scope>test</scope> |
| </dependency> |
| <dependency> |
| <groupId>org.apache.hbase</groupId> |
| <artifactId>hbase-http</artifactId> |
| <version>${project.version}</version> |
| </dependency> |
| <dependency> |
| <groupId>org.apache.hbase</groupId> |
| <artifactId>hbase-http</artifactId> |
| <version>${project.version}</version> |
| <type>test-jar</type> |
| <scope>test</scope> |
| </dependency> |
| <dependency> |
| <groupId>org.apache.hbase</groupId> |
| <artifactId>hbase-server</artifactId> |
| <version>${project.version}</version> |
| </dependency> |
| <dependency> |
| <groupId>org.apache.hbase</groupId> |
| <artifactId>hbase-server</artifactId> |
| <version>${project.version}</version> |
| <type>test-jar</type> |
| <scope>test</scope> |
| </dependency> |
| <dependency> |
| <groupId>org.apache.hbase</groupId> |
| <artifactId>hbase-mapreduce</artifactId> |
| <version>${project.version}</version> |
| </dependency> |
| <dependency> |
| <groupId>org.apache.hbase</groupId> |
| <artifactId>hbase-mapreduce</artifactId> |
| <version>${project.version}</version> |
| <type>test-jar</type> |
| <scope>test</scope> |
| </dependency> |
| <dependency> |
| <groupId>org.apache.hbase</groupId> |
| <artifactId>hbase-endpoint</artifactId> |
| <version>${project.version}</version> |
| </dependency> |
| <dependency> |
| <groupId>org.apache.hbase</groupId> |
| <artifactId>hbase-shell</artifactId> |
| <version>${project.version}</version> |
| </dependency> |
| <dependency> |
| <groupId>org.apache.hbase</groupId> |
| <artifactId>hbase-shell</artifactId> |
| <version>${project.version}</version> |
| <type>test-jar</type> |
| <scope>test</scope> |
| </dependency> |
| <dependency> |
| <groupId>org.apache.hbase</groupId> |
| <artifactId>hbase-thrift</artifactId> |
| <version>${project.version}</version> |
| </dependency> |
| <dependency> |
| <groupId>org.apache.hbase</groupId> |
| <artifactId>hbase-thrift</artifactId> |
| <version>${project.version}</version> |
| <type>test-jar</type> |
| <scope>test</scope> |
| </dependency> |
| <dependency> |
| <groupId>org.apache.hbase</groupId> |
| <artifactId>hbase-testing-util</artifactId> |
| <version>${project.version}</version> |
| <scope>test</scope> |
| </dependency> |
| <dependency> |
| <groupId>org.apache.hbase</groupId> |
| <artifactId>hbase-examples</artifactId> |
| <version>${project.version}</version> |
| </dependency> |
| <dependency> |
| <groupId>org.apache.hbase</groupId> |
| <artifactId>hbase-external-blockcache</artifactId> |
| <version>${project.version}</version> |
| </dependency> |
| <dependency> |
| <groupId>org.apache.hbase</groupId> |
| <artifactId>hbase-it</artifactId> |
| <version>${project.version}</version> |
| <type>test-jar</type> |
| <scope>test</scope> |
| </dependency> |
| <dependency> |
| <groupId>org.apache.hbase</groupId> |
| <artifactId>hbase-client</artifactId> |
| <version>${project.version}</version> |
| </dependency> |
| <dependency> |
| <groupId>org.apache.hbase</groupId> |
| <artifactId>hbase-client</artifactId> |
| <version>${project.version}</version> |
| <type>test-jar</type> |
| <scope>test</scope> |
| </dependency> |
| <dependency> |
| <groupId>org.apache.hbase</groupId> |
| <artifactId>hbase-metrics-api</artifactId> |
| <version>${project.version}</version> |
| </dependency> |
| <dependency> |
| <groupId>org.apache.hbase</groupId> |
| <artifactId>hbase-metrics-api</artifactId> |
| <version>${project.version}</version> |
| <type>test-jar</type> |
| <scope>test</scope> |
| </dependency> |
| <dependency> |
| <groupId>org.apache.hbase</groupId> |
| <artifactId>hbase-metrics</artifactId> |
| <version>${project.version}</version> |
| </dependency> |
| <dependency> |
| <groupId>org.apache.hbase</groupId> |
| <artifactId>hbase-metrics</artifactId> |
| <version>${project.version}</version> |
| <type>test-jar</type> |
| <scope>test</scope> |
| </dependency> |
| <dependency> |
| <groupId>org.apache.hbase</groupId> |
| <artifactId>hbase-rest</artifactId> |
| <version>${project.version}</version> |
| </dependency> |
| <dependency> |
| <groupId>org.apache.hbase</groupId> |
| <artifactId>hbase-resource-bundle</artifactId> |
| <version>${project.version}</version> |
| </dependency> |
| <dependency> |
| <groupId>org.apache.hbase</groupId> |
| <artifactId>hbase-zookeeper</artifactId> |
| <version>${project.version}</version> |
| <exclusions> |
| <exclusion> |
| <groupId>com.google.code.findbugs</groupId> |
| <artifactId>jsr305</artifactId> |
| </exclusion> |
| <exclusion> |
| <groupId>com.github.spotbugs</groupId> |
| <artifactId>spotbugs-annotations</artifactId> |
| </exclusion> |
| </exclusions> |
| </dependency> |
| <dependency> |
| <groupId>org.apache.hbase</groupId> |
| <artifactId>hbase-zookeeper</artifactId> |
| <version>${project.version}</version> |
| <type>test-jar</type> |
| <scope>test</scope> |
| </dependency> |
| <dependency> |
| <groupId>org.apache.hbase</groupId> |
| <artifactId>hbase-hbtop</artifactId> |
| <version>${project.version}</version> |
| </dependency> |
| <dependency> |
| <groupId>org.apache.hbase</groupId> |
| <artifactId>hbase-shaded-client</artifactId> |
| <version>${project.version}</version> |
| </dependency> |
| <dependency> |
| <groupId>org.apache.hbase</groupId> |
| <artifactId>hbase-shaded-client-byo-hadoop</artifactId> |
| <version>${project.version}</version> |
| </dependency> |
| <dependency> |
| <groupId>org.apache.hbase</groupId> |
| <artifactId>hbase-shaded-mapreduce</artifactId> |
| <version>${project.version}</version> |
| </dependency> |
| <dependency> |
| <groupId>org.apache.hbase</groupId> |
| <artifactId>hbase-shaded-testing-util</artifactId> |
| <version>${project.version}</version> |
| </dependency> |
| <dependency> |
| <groupId>org.apache.hbase</groupId> |
| <artifactId>hbase-asyncfs</artifactId> |
| <version>${project.version}</version> |
| </dependency> |
| <dependency> |
| <groupId>org.apache.hbase</groupId> |
| <artifactId>hbase-asyncfs</artifactId> |
| <version>${project.version}</version> |
| <type>test-jar</type> |
| <scope>test</scope> |
| </dependency> |
| <dependency> |
| <groupId>org.apache.hbase</groupId> |
| <artifactId>hbase-compression-aircompressor</artifactId> |
| <version>${project.version}</version> |
| </dependency> |
| <dependency> |
| <groupId>org.apache.hbase</groupId> |
| <artifactId>hbase-compression-brotli</artifactId> |
| <version>${project.version}</version> |
| </dependency> |
| <dependency> |
| <groupId>org.apache.hbase</groupId> |
| <artifactId>hbase-compression-lz4</artifactId> |
| <version>${project.version}</version> |
| </dependency> |
| <dependency> |
| <groupId>org.apache.hbase</groupId> |
| <artifactId>hbase-compression-snappy</artifactId> |
| <version>${project.version}</version> |
| </dependency> |
| <dependency> |
| <groupId>org.apache.hbase</groupId> |
| <artifactId>hbase-compression-xz</artifactId> |
| <version>${project.version}</version> |
| </dependency> |
| <dependency> |
| <groupId>org.apache.hbase</groupId> |
| <artifactId>hbase-compression-zstd</artifactId> |
| <version>${project.version}</version> |
| </dependency> |
| <dependency> |
| <groupId>org.apache.hbase</groupId> |
| <artifactId>hbase-openssl</artifactId> |
| <version>${project.version}</version> |
| </dependency> |
| <!-- General dependencies --> |
| <dependency> |
| <groupId>com.github.stephenc.findbugs</groupId> |
| <artifactId>findbugs-annotations</artifactId> |
| <version>${findbugs-annotations.version}</version> |
| </dependency> |
| <!-- |
| Logging dependencies. In general, we use slf4j as the log facade in HBase, so all sub |
| modules should depend on slf4j-api at compile scope, and then depend on log4j-slf4j-impl |
| and log4j2 at test scope(and in hbase-assembly when shipping the binary) to redirect the |
| log message to log4j. Do not introduce logging dependencies other than slf4j-api at compile |
| scope as it will mess up the logging framework for downstream users. |
| Here we also depend on jcl-over-slf4j and jul-to-slf4j, as some of the libraries we depend |
| on use these logging framework so we need to redirect their log message to slf4j, and then |
| redirect the log message to our log4j framework. |
| --> |
| <dependency> |
| <groupId>org.codehaus.jettison</groupId> |
| <artifactId>jettison</artifactId> |
| <version>${jettison.version}</version> |
| </dependency> |
| <!-- Logging --> |
| <dependency> |
| <groupId>org.slf4j</groupId> |
| <artifactId>slf4j-api</artifactId> |
| <version>${slf4j.version}</version> |
| </dependency> |
| <dependency> |
| <groupId>org.slf4j</groupId> |
| <artifactId>jcl-over-slf4j</artifactId> |
| <version>${slf4j.version}</version> |
| </dependency> |
| <dependency> |
| <groupId>org.slf4j</groupId> |
| <artifactId>jul-to-slf4j</artifactId> |
| <version>${slf4j.version}</version> |
| </dependency> |
| <dependency> |
| <groupId>org.apache.logging.log4j</groupId> |
| <artifactId>log4j-api</artifactId> |
| <version>${log4j2.version}</version> |
| </dependency> |
| <dependency> |
| <groupId>org.apache.logging.log4j</groupId> |
| <artifactId>log4j-core</artifactId> |
| <version>${log4j2.version}</version> |
| </dependency> |
| <dependency> |
| <groupId>org.apache.logging.log4j</groupId> |
| <artifactId>log4j-slf4j-impl</artifactId> |
| <version>${log4j2.version}</version> |
| </dependency> |
| <dependency> |
| <groupId>org.apache.logging.log4j</groupId> |
| <artifactId>log4j-1.2-api</artifactId> |
| <version>${log4j2.version}</version> |
| </dependency> |
| <!-- Avro dependencies we mostly get transitively, manual version coallescing --> |
| <dependency> |
| <groupId>org.apache.avro</groupId> |
| <artifactId>avro</artifactId> |
| <version>${avro.version}</version> |
| </dependency> |
| <dependency> |
| <groupId>com.github.ben-manes.caffeine</groupId> |
| <artifactId>caffeine</artifactId> |
| <version>${caffeine.version}</version> |
| </dependency> |
| <dependency> |
| <groupId>io.dropwizard.metrics</groupId> |
| <artifactId>metrics-core</artifactId> |
| <version>${metrics-core.version}</version> |
| </dependency> |
| <dependency> |
| <groupId>org.apache.httpcomponents</groupId> |
| <artifactId>httpclient</artifactId> |
| <version>${httpclient.version}</version> |
| </dependency> |
| <dependency> |
| <groupId>org.apache.httpcomponents</groupId> |
| <artifactId>httpcore</artifactId> |
| <version>${httpcore.version}</version> |
| </dependency> |
| <dependency> |
| <groupId>commons-codec</groupId> |
| <artifactId>commons-codec</artifactId> |
| <version>${commons-codec.version}</version> |
| </dependency> |
| <dependency> |
| <groupId>commons-validator</groupId> |
| <artifactId>commons-validator</artifactId> |
| <version>${commons-validator.version}</version> |
| </dependency> |
| <dependency> |
| <groupId>commons-io</groupId> |
| <artifactId>commons-io</artifactId> |
| <version>${commons-io.version}</version> |
| </dependency> |
| <dependency> |
| <groupId>org.apache.commons</groupId> |
| <artifactId>commons-lang3</artifactId> |
| <version>${commons-lang3.version}</version> |
| </dependency> |
| <dependency> |
| <groupId>org.apache.commons</groupId> |
| <artifactId>commons-math3</artifactId> |
| <version>${commons-math.version}</version> |
| </dependency> |
| <dependency> |
| <groupId>commons-cli</groupId> |
| <artifactId>commons-cli</artifactId> |
| <version>${commons-cli.version}</version> |
| </dependency> |
| <dependency> |
| <!-- commons-logging is only used by hbase-http's HttpRequestLog and hbase-server's |
| HBaseTestingUtil. |
| --> |
| <groupId>commons-logging</groupId> |
| <artifactId>commons-logging</artifactId> |
| <version>1.2</version> |
| </dependency> |
| <dependency> |
| <groupId>org.apache.zookeeper</groupId> |
| <artifactId>zookeeper</artifactId> |
| <version>${zookeeper.version}</version> |
| <exclusions> |
| <exclusion> |
| <groupId>ch.qos.logback</groupId> |
| <artifactId>logback-core</artifactId> |
| </exclusion> |
| <exclusion> |
| <groupId>ch.qos.logback</groupId> |
| <artifactId>logback-classic</artifactId> |
| </exclusion> |
| </exclusions> |
| </dependency> |
| <dependency> |
| <groupId>jline</groupId> |
| <artifactId>jline</artifactId> |
| <version>${jline.version}</version> |
| </dependency> |
| <dependency> |
| <groupId>org.apache.thrift</groupId> |
| <artifactId>libthrift</artifactId> |
| <version>${thrift.version}</version> |
| <exclusions> |
| <exclusion> |
| <groupId>org.apache.tomcat.embed</groupId> |
| <artifactId>tomcat-embed-core</artifactId> |
| </exclusion> |
| </exclusions> |
| </dependency> |
| <dependency> |
| <groupId>org.jruby</groupId> |
| <artifactId>jruby-complete</artifactId> |
| <version>${jruby.version}</version> |
| </dependency> |
| <dependency> |
| <groupId>org.jruby.jcodings</groupId> |
| <artifactId>jcodings</artifactId> |
| <version>${jcodings.version}</version> |
| </dependency> |
| <dependency> |
| <groupId>org.jruby.joni</groupId> |
| <artifactId>joni</artifactId> |
| <version>${joni.version}</version> |
| </dependency> |
| <dependency> |
| <groupId>com.fasterxml.jackson.core</groupId> |
| <artifactId>jackson-annotations</artifactId> |
| <version>${jackson.version}</version> |
| </dependency> |
| <dependency> |
| <groupId>com.fasterxml.jackson.core</groupId> |
| <artifactId>jackson-core</artifactId> |
| <version>${jackson.version}</version> |
| </dependency> |
| <dependency> |
| <groupId>com.fasterxml.jackson.core</groupId> |
| <artifactId>jackson-databind</artifactId> |
| <version>${jackson.databind.version}</version> |
| </dependency> |
| <dependency> |
| <groupId>org.jamon</groupId> |
| <artifactId>jamon-runtime</artifactId> |
| <version>${jamon-runtime.version}</version> |
| </dependency> |
| <!-- REST dependencies --> |
| <dependency> |
| <groupId>javax.servlet</groupId> |
| <artifactId>javax.servlet-api</artifactId> |
| <version>${servlet.api.version}</version> |
| </dependency> |
| <dependency> |
| <groupId>javax.ws.rs</groupId> |
| <artifactId>javax.ws.rs-api</artifactId> |
| <version>${wx.rs.api.version}</version> |
| </dependency> |
| <dependency> |
| <groupId>com.sun.activation</groupId> |
| <artifactId>javax.activation</artifactId> |
| <version>1.2.0</version> |
| </dependency> |
| <dependency> |
| <groupId>javax.annotation</groupId> |
| <artifactId>javax.annotation-api</artifactId> |
| <version>1.2</version> |
| </dependency> |
| <dependency> |
| <!--This lib has JspC in it. Needed precompiling jsps in hbase-rest, etc.--> |
| <groupId>org.glassfish.web</groupId> |
| <artifactId>javax.servlet.jsp</artifactId> |
| <version>${glassfish.jsp.version}</version> |
| </dependency> |
| <dependency> |
| <!-- this lib is used by the compiled Jsp from the above JspC --> |
| <groupId>javax.servlet.jsp</groupId> |
| <artifactId>javax.servlet.jsp-api</artifactId> |
| <version>2.3.1</version> |
| </dependency> |
| <dependency> |
| <groupId>org.glassfish</groupId> |
| <artifactId>javax.el</artifactId> |
| <version>${glassfish.el.version}</version> |
| </dependency> |
| <dependency> |
| <groupId>javax.xml.bind</groupId> |
| <artifactId>jaxb-api</artifactId> |
| <version>${jaxb-api.version}</version> |
| <exclusions> |
| <exclusion> |
| <groupId>javax.xml.stream</groupId> |
| <artifactId>stax-api</artifactId> |
| </exclusion> |
| </exclusions> |
| </dependency> |
| <dependency> |
| <groupId>junit</groupId> |
| <artifactId>junit</artifactId> |
| <version>${junit.version}</version> |
| </dependency> |
| <dependency> |
| <groupId>org.hamcrest</groupId> |
| <artifactId>hamcrest-core</artifactId> |
| <version>${hamcrest.version}</version> |
| </dependency> |
| <dependency> |
| <groupId>org.hamcrest</groupId> |
| <artifactId>hamcrest-library</artifactId> |
| <version>${hamcrest.version}</version> |
| </dependency> |
| <dependency> |
| <groupId>org.mockito</groupId> |
| <artifactId>mockito-bom</artifactId> |
| <version>${mockito.version}</version> |
| <type>pom</type> |
| <scope>import</scope> |
| </dependency> |
| <dependency> |
| <groupId>io.opentelemetry</groupId> |
| <artifactId>opentelemetry-bom</artifactId> |
| <version>${opentelemetry.version}</version> |
| <type>pom</type> |
| <scope>import</scope> |
| </dependency> |
| <dependency> |
| <groupId>io.opentelemetry</groupId> |
| <artifactId>opentelemetry-semconv</artifactId> |
| <version>${opentelemetry.version}-alpha</version> |
| </dependency> |
| <dependency> |
| <groupId>io.opentelemetry.javaagent</groupId> |
| <artifactId>opentelemetry-javaagent</artifactId> |
| <version>${opentelemetry-javaagent.version}</version> |
| </dependency> |
| <dependency> |
| <groupId>com.lmax</groupId> |
| <artifactId>disruptor</artifactId> |
| <version>${disruptor.version}</version> |
| </dependency> |
| <dependency> |
| <groupId>net.spy</groupId> |
| <artifactId>spymemcached</artifactId> |
| <version>${spy.version}</version> |
| <optional>true</optional> |
| </dependency> |
| <dependency> |
| <groupId>org.bouncycastle</groupId> |
| <artifactId>bcprov-jdk18on</artifactId> |
| <version>${bouncycastle.version}</version> |
| <scope>test</scope> |
| </dependency> |
| <dependency> |
| <groupId>org.skyscreamer</groupId> |
| <artifactId>jsonassert</artifactId> |
| <version>${skyscreamer.version}</version> |
| <scope>test</scope> |
| </dependency> |
| <dependency> |
| <groupId>org.bouncycastle</groupId> |
| <artifactId>bcpkix-jdk18on</artifactId> |
| <version>${bouncycastle.version}</version> |
| <scope>test</scope> |
| </dependency> |
| <dependency> |
| <groupId>org.apache.kerby</groupId> |
| <artifactId>kerb-core</artifactId> |
| <version>${kerby.version}</version> |
| </dependency> |
| <dependency> |
| <groupId>org.apache.kerby</groupId> |
| <artifactId>kerb-client</artifactId> |
| <version>${kerby.version}</version> |
| </dependency> |
| <dependency> |
| <groupId>org.apache.kerby</groupId> |
| <artifactId>kerb-simplekdc</artifactId> |
| <version>${kerby.version}</version> |
| </dependency> |
| <dependency> |
| <groupId>org.apache.commons</groupId> |
| <artifactId>commons-crypto</artifactId> |
| <version>${commons-crypto.version}</version> |
| <exclusions> |
| <exclusion> |
| <groupId>net.java.dev.jna</groupId> |
| <artifactId>jna</artifactId> |
| </exclusion> |
| </exclusions> |
| </dependency> |
| <dependency> |
| <groupId>org.apache.curator</groupId> |
| <artifactId>curator-framework</artifactId> |
| <version>${curator.version}</version> |
| <exclusions> |
| <exclusion> |
| <groupId>org.apache.zookeeper</groupId> |
| <artifactId>zookeeper</artifactId> |
| </exclusion> |
| </exclusions> |
| </dependency> |
| <dependency> |
| <groupId>org.apache.curator</groupId> |
| <artifactId>curator-client</artifactId> |
| <version>${curator.version}</version> |
| <exclusions> |
| <exclusion> |
| <groupId>com.google.guava</groupId> |
| <artifactId>guava</artifactId> |
| </exclusion> |
| <exclusion> |
| <groupId>org.apache.zookeeper</groupId> |
| <artifactId>zookeeper</artifactId> |
| </exclusion> |
| </exclusions> |
| </dependency> |
| <dependency> |
| <groupId>org.apache.curator</groupId> |
| <artifactId>curator-recipes</artifactId> |
| <version>${curator.version}</version> |
| <exclusions> |
| <exclusion> |
| <groupId>com.google.guava</groupId> |
| <artifactId>guava</artifactId> |
| </exclusion> |
| <exclusion> |
| <groupId>org.apache.zookeeper</groupId> |
| <artifactId>zookeeper</artifactId> |
| </exclusion> |
| </exclusions> |
| </dependency> |
| <dependency> |
| <groupId>org.apache.yetus</groupId> |
| <artifactId>audience-annotations</artifactId> |
| <version>${audience-annotations.version}</version> |
| </dependency> |
| <!-- compression --> |
| <dependency> |
| <groupId>io.airlift</groupId> |
| <artifactId>aircompressor</artifactId> |
| <version>${aircompressor.version}</version> |
| </dependency> |
| <dependency> |
| <groupId>org.lz4</groupId> |
| <artifactId>lz4-java</artifactId> |
| <version>${lz4.version}</version> |
| </dependency> |
| <dependency> |
| <groupId>org.tukaani</groupId> |
| <artifactId>xz</artifactId> |
| <version>${xz.version}</version> |
| </dependency> |
| <dependency> |
| <groupId>org.xerial.snappy</groupId> |
| <artifactId>snappy-java</artifactId> |
| <version>${snappy.version}</version> |
| </dependency> |
| <dependency> |
| <groupId>com.github.luben</groupId> |
| <artifactId>zstd-jni</artifactId> |
| <version>${zstd-jni.version}</version> |
| </dependency> |
| <!-- shaded thirdparty --> |
| <dependency> |
| <groupId>org.apache.hbase.thirdparty</groupId> |
| <artifactId>hbase-shaded-gson</artifactId> |
| <version>${hbase-thirdparty.version}</version> |
| </dependency> |
| <dependency> |
| <groupId>org.apache.hbase.thirdparty</groupId> |
| <artifactId>hbase-shaded-miscellaneous</artifactId> |
| <version>${hbase-thirdparty.version}</version> |
| </dependency> |
| <dependency> |
| <groupId>org.apache.hbase.thirdparty</groupId> |
| <artifactId>hbase-shaded-netty</artifactId> |
| <version>${hbase-thirdparty.version}</version> |
| </dependency> |
| <dependency> |
| <groupId>org.apache.hbase.thirdparty</groupId> |
| <artifactId>hbase-shaded-netty-tcnative</artifactId> |
| <version>${hbase-thirdparty.version}</version> |
| </dependency> |
| <dependency> |
| <groupId>org.apache.hbase.thirdparty</groupId> |
| <artifactId>hbase-shaded-protobuf</artifactId> |
| <version>${hbase-thirdparty.version}</version> |
| </dependency> |
| <dependency> |
| <groupId>org.apache.hbase.thirdparty</groupId> |
| <artifactId>hbase-shaded-jetty</artifactId> |
| <version>${hbase-thirdparty.version}</version> |
| </dependency> |
| <dependency> |
| <groupId>org.apache.hbase.thirdparty</groupId> |
| <artifactId>hbase-shaded-jersey</artifactId> |
| <version>${hbase-thirdparty.version}</version> |
| </dependency> |
| <dependency> |
| <groupId>org.apache.hbase.thirdparty</groupId> |
| <artifactId>hbase-shaded-jackson-jaxrs-json-provider</artifactId> |
| <version>${hbase-thirdparty.version}</version> |
| </dependency> |
| <dependency> |
| <groupId>org.apache.hbase.thirdparty</groupId> |
| <artifactId>hbase-unsafe</artifactId> |
| <version>${hbase-thirdparty.version}</version> |
| </dependency> |
| <dependency> |
| <groupId>com.sun.xml.ws</groupId> |
| <artifactId>jaxws-ri</artifactId> |
| <version>2.3.2</version> |
| <type>pom</type> |
| <exclusions> |
| <exclusion> |
| <groupId>javax.activation</groupId> |
| <artifactId>javax.activation-api</artifactId> |
| </exclusion> |
| </exclusions> |
| </dependency> |
| <dependency> |
| <groupId>io.netty</groupId> |
| <artifactId>netty</artifactId> |
| <version>${netty3.version}</version> |
| </dependency> |
| <dependency> |
| <groupId>io.netty</groupId> |
| <artifactId>netty-bom</artifactId> |
| <version>${netty4.version}</version> |
| <type>pom</type> |
| <scope>import</scope> |
| </dependency> |
| </dependencies> |
| </dependencyManagement> |
| <dependencies> |
| <!--REMOVE THIS. HERE TEMPORARILY. |
| Implication is that every module needs junit which is not so. |
| Cannot undo though because build runs test on each module and |
| it fails if no junit. TODO. --> |
| <dependency> |
| <groupId>junit</groupId> |
| <artifactId>junit</artifactId> |
| <scope>test</scope> |
| </dependency> |
| </dependencies> |
| <build> |
| <!-- Plugin versions are inherited from ASF parent pom: https://maven.apache.org/pom/asf/ |
| For specific version use a property and define it in the parent pom. |
| --> |
| <pluginManagement> |
| <plugins> |
| <plugin> |
| <groupId>org.apache.maven.plugins</groupId> |
| <artifactId>maven-remote-resources-plugin</artifactId> |
| </plugin> |
| <plugin> |
| <groupId>org.apache.maven.plugins</groupId> |
| <artifactId>maven-release-plugin</artifactId> |
| <configuration> |
| <!--You need this profile. It'll sign your artifacts. |
| I'm not sure if this config. actually works though. |
| I've been specifying -Papache-release on the command-line |
| --> |
| <releaseProfiles>apache-release</releaseProfiles> |
| <!--This stops our running tests for each stage of maven release. |
| But it builds the test jar. From SUREFIRE-172. |
| --> |
| <arguments>-Dmaven.test.skip.exec ${arguments}</arguments> |
| <goals>${goals}</goals> |
| <pomFileName>pom.xml</pomFileName> |
| </configuration> |
| </plugin> |
| <plugin> |
| <groupId>org.apache.maven.plugins</groupId> |
| <artifactId>maven-compiler-plugin</artifactId> |
| <configuration> |
| <showWarnings>true</showWarnings> |
| <showDeprecation>false</showDeprecation> |
| <useIncrementalCompilation>false</useIncrementalCompilation> |
| <compilerArgument>-Xlint:-options</compilerArgument> |
| </configuration> |
| </plugin> |
| <plugin> |
| <groupId>org.apache.maven.plugins</groupId> |
| <artifactId>maven-javadoc-plugin</artifactId> |
| <version>${maven.javadoc.version}</version> |
| <configuration> |
| <source>${compileSource}</source> |
| </configuration> |
| </plugin> |
| <!-- Test oriented plugins --> |
| <plugin> |
| <groupId>org.apache.maven.plugins</groupId> |
| <artifactId>maven-surefire-plugin</artifactId> |
| <version>${surefire.version}</version> |
| <!-- Generic testing configuration for all packages --> |
| <configuration> |
| <groups>${surefire.firstPartGroups}</groups> |
| <failIfNoTests>false</failIfNoTests> |
| <failIfNoSpecifiedTests>false</failIfNoSpecifiedTests> |
| <trimStackTrace>false</trimStackTrace> |
| <skip>${surefire.skipFirstPart}</skip> |
| <forkCount>${surefire.firstPartForkCount}</forkCount> |
| <forkNode implementation="org.apache.maven.plugin.surefire.extensions.SurefireForkNodeFactory"/> |
| <!-- |
| The counter in HBaseTestAppender will be broken if we set reuseForks to true, be |
| careful when you want to change this value. See HBASE-26947 for more details. |
| --> |
| <reuseForks>false</reuseForks> |
| <reportsDirectory>${surefire.reportsDirectory}</reportsDirectory> |
| <tempDir>${surefire.tempDir}</tempDir> |
| <testFailureIgnore>${surefire.testFailureIgnore}</testFailureIgnore> |
| <forkedProcessTimeoutInSeconds>${surefire.timeout}</forkedProcessTimeoutInSeconds> |
| <redirectTestOutputToFile>${test.output.tofile}</redirectTestOutputToFile> |
| <systemPropertyVariables> |
| <test.build.classes>${test.build.classes}</test.build.classes> |
| <java.io.tmpdir>${test.tmp.dir}</java.io.tmpdir> |
| <java.util.logging.config.class>org.apache.hadoop.hbase.logging.JulToSlf4jInitializer</java.util.logging.config.class> |
| </systemPropertyVariables> |
| <excludes> |
| <!-- users can add -D option to skip particular test classes |
| ex: mvn test -Dtest.exclude.pattern=**/TestFoo.java,**/TestBar.java |
| --> |
| <exclude>${test.exclude.pattern}</exclude> |
| </excludes> |
| <properties> |
| <property> |
| <name>listener</name> |
| <value>org.apache.hadoop.hbase.TimedOutTestsListener,org.apache.hadoop.hbase.HBaseClassTestRuleChecker,org.apache.hadoop.hbase.ResourceCheckerJUnitListener</value> |
| </property> |
| </properties> |
| </configuration> |
| <dependencies> |
| <!-- by default surefire selects dynamically the connector to the unit tests |
| tool. We want to use always the same as the different connectors can have different |
| bugs and behaviour. --> |
| <dependency> |
| <groupId>org.apache.maven.surefire</groupId> |
| <artifactId>${surefire.provider}</artifactId> |
| <version>${surefire.version}</version> |
| </dependency> |
| </dependencies> |
| <executions> |
| <execution> |
| <id>secondPartTestsExecution</id> |
| <goals> |
| <goal>test</goal> |
| </goals> |
| <phase>test</phase> |
| <configuration> |
| <skip>${surefire.skipSecondPart}</skip> |
| <testFailureIgnore>${surefire.testFailureIgnore}</testFailureIgnore> |
| <!-- |
| The counter in HBaseTestAppender will be broken if we set reuseForks to true, be |
| careful when you want to change this value. See HBASE-26947 for more details. |
| --> |
| <reuseForks>false</reuseForks> |
| <forkCount>${surefire.secondPartForkCount}</forkCount> |
| <forkNode implementation="org.apache.maven.plugin.surefire.extensions.SurefireForkNodeFactory"/> |
| <groups>${surefire.secondPartGroups}</groups> |
| <forkedProcessTimeoutInSeconds>${surefire.timeout}</forkedProcessTimeoutInSeconds> |
| </configuration> |
| </execution> |
| </executions> |
| </plugin> |
| <plugin> |
| <groupId>org.apache.maven.plugins</groupId> |
| <artifactId>maven-surefire-report-plugin</artifactId> |
| <version>${surefire.version}</version> |
| </plugin> |
| <plugin> |
| <groupId>org.codehaus.mojo</groupId> |
| <artifactId>buildnumber-maven-plugin</artifactId> |
| <version>${buildnumber.maven.version}</version> |
| </plugin> |
| <plugin> |
| <groupId>com.github.spotbugs</groupId> |
| <artifactId>spotbugs-maven-plugin</artifactId> |
| <version>${spotbugs.maven.version}</version> |
| <configuration> |
| <excludeFilterFile>${project.basedir}/../dev-support/spotbugs-exclude.xml</excludeFilterFile> |
| <spotbugsXmlOutput>true</spotbugsXmlOutput> |
| <xmlOutput>true</xmlOutput> |
| <effort>Max</effort> |
| </configuration> |
| <dependencies> |
| <!-- overwrite dependency on spotbugs if you want to specify the version of spotbugs --> |
| <dependency> |
| <groupId>com.github.spotbugs</groupId> |
| <artifactId>spotbugs</artifactId> |
| <version>${spotbugs.version}</version> |
| </dependency> |
| </dependencies> |
| </plugin> |
| <plugin> |
| <groupId>org.codehaus.mojo</groupId> |
| <artifactId>build-helper-maven-plugin</artifactId> |
| <version>${build.helper.maven.version}</version> |
| </plugin> |
| <plugin> |
| <artifactId>maven-antrun-plugin</artifactId> |
| <version>${maven.antrun.version}</version> |
| </plugin> |
| <plugin> |
| <groupId>org.jamon</groupId> |
| <artifactId>jamon-maven-plugin</artifactId> |
| <version>${jamon.plugin.version}</version> |
| </plugin> |
| <!-- Make a jar and put the sources in the jar. |
| In the parent pom, so submodules will do the right thing. --> |
| <plugin> |
| <groupId>org.apache.maven.plugins</groupId> |
| <artifactId>maven-source-plugin</artifactId> |
| <executions> |
| <execution> |
| <id>attach-sources</id> |
| <goals> |
| <goal>jar-no-fork</goal> |
| <goal>test-jar-no-fork</goal> |
| </goals> |
| <phase>prepare-package</phase> |
| <configuration> |
| <excludes> |
| <exclude>log4j2.xml</exclude> |
| </excludes> |
| </configuration> |
| </execution> |
| </executions> |
| </plugin> |
| <!-- General configuration for submodules who want to build a test jar --> |
| <plugin> |
| <groupId>org.apache.maven.plugins</groupId> |
| <artifactId>maven-jar-plugin</artifactId> |
| <configuration> |
| <skipIfEmpty>true</skipIfEmpty> |
| <excludes> |
| <exclude>hbase-site.xml</exclude> |
| <exclude>hdfs-site.xml</exclude> |
| <exclude>mapred-queues.xml</exclude> |
| <exclude>mapred-site.xml</exclude> |
| </excludes> |
| </configuration> |
| <executions> |
| <execution> |
| <goals> |
| <!--This goal will install a -test.jar when we do install |
| See https://maven.apache.org/guides/mini/guide-attached-tests.html |
| --> |
| <goal>test-jar</goal> |
| </goals> |
| <phase>prepare-package</phase> |
| </execution> |
| </executions> |
| </plugin> |
| <plugin> |
| <!-- excludes are inherited --> |
| <groupId>org.apache.rat</groupId> |
| <artifactId>apache-rat-plugin</artifactId> |
| <configuration> |
| <excludes> |
| <exclude>**/*.versionsBackup</exclude> |
| <exclude>**/*.log</exclude> |
| <exclude>**/.*</exclude> |
| <exclude>**/*.tgz</exclude> |
| <exclude>**/*.orig</exclude> |
| <exclude>**/0000000000000016310</exclude> |
| <exclude>**/a6a6562b777440fd9c34885428f5cb61.21e75333ada3d5bafb34bb918f29576c</exclude> |
| <exclude>**/8e8ab58dcf39412da19833fcd8f687ac</exclude> |
| <exclude>**/.idea/**</exclude> |
| <exclude>**/*.iml</exclude> |
| <exclude>**/CHANGES.txt</exclude> |
| <exclude>**/generated/**</exclude> |
| <exclude>**/gen-*/**</exclude> |
| <!-- No material contents --> |
| <exclude>conf/regionservers</exclude> |
| <exclude>**/*.avpr</exclude> |
| <exclude>**/*.svg</exclude> |
| <!-- non-standard notice file from jruby included by reference --> |
| <exclude>**/src/main/resources/META-INF/LEGAL</exclude> |
| <!-- MIT: https://github.com/asciidoctor/asciidoctor/blob/master/LICENSE.adoc --> |
| <exclude>**/src/main/asciidoc/hbase.css</exclude> |
| <!-- MIT https://jquery.org/license --> |
| <exclude>**/jquery.min.js</exclude> |
| <exclude>**/jquery.tablesorter.min.js</exclude> |
| <exclude>**/parser-date-iso8601.min.js</exclude> |
| <!-- MIT: bootstrap --> |
| <exclude>**/src/main/resources/hbase-webapps/static/*/bootstrap*</exclude> |
| <!-- BSD 3-clause: Vega, Vega-Lite, Vega-Embed --> |
| <exclude>**/hbase-webapps/static/js/vega*.min.js</exclude> |
| <!-- vector graphics --> |
| <exclude>**/*.vm</exclude> |
| <!-- apache doxia generated --> |
| <exclude>**/control</exclude> |
| <exclude>**/conffile</exclude> |
| <!-- auto-gen docs --> |
| <exclude>docs/*</exclude> |
| <exclude>logs/*</exclude> |
| <!-- exclude source control files --> |
| <exclude>.git/**</exclude> |
| <exclude>.svn/**</exclude> |
| <exclude>**/.settings/**</exclude> |
| <exclude>**/patchprocess/**</exclude> |
| <exclude>src/site/resources/repo/**</exclude> |
| <exclude>**/dependency-reduced-pom.xml</exclude> |
| <exclude>**/rat.txt</exclude> |
| <!-- exclude the shaded protobuf files --> |
| <exclude>**/shaded/com/google/protobuf/**</exclude> |
| <exclude>**/src/main/patches/**</exclude> |
| <exclude>**/vote.tmpl</exclude> |
| <!-- gzipped list of S3N URIs for hbase-it --> |
| <exclude>**/CC-MAIN-2021-10-warc.paths.gz</exclude> |
| </excludes> |
| </configuration> |
| </plugin> |
| <plugin> |
| <artifactId>maven-assembly-plugin</artifactId> |
| <configuration> |
| <!--Defer to the hbase-assembly sub-module. It |
| does all assembly--> |
| <skipAssembly>true</skipAssembly> |
| </configuration> |
| </plugin> |
| <plugin> |
| <groupId>org.xolstice.maven.plugins</groupId> |
| <artifactId>protobuf-maven-plugin</artifactId> |
| <version>${protobuf.plugin.version}</version> |
| <configuration> |
| <protoSourceRoot>${basedir}/src/main/protobuf/</protoSourceRoot> |
| <clearOutputDirectory>false</clearOutputDirectory> |
| <checkStaleness>true</checkStaleness> |
| </configuration> |
| </plugin> |
| <plugin> |
| <!-- Approach followed here is roughly the same as mentioned here: |
| https://maven.apache.org/plugins/maven-checkstyle-plugin/examples/multi-module-config.html |
| --> |
| <groupId>org.apache.maven.plugins</groupId> |
| <artifactId>maven-checkstyle-plugin</artifactId> |
| <version>${maven.checkstyle.version}</version> |
| <configuration> |
| <configLocation>hbase/checkstyle.xml</configLocation> |
| <suppressionsLocation>hbase/checkstyle-suppressions.xml</suppressionsLocation> |
| <includeTestSourceDirectory>true</includeTestSourceDirectory> |
| </configuration> |
| <dependencies> |
| <dependency> |
| <groupId>org.apache.hbase</groupId> |
| <artifactId>hbase-checkstyle</artifactId> |
| <version>${project.version}</version> |
| </dependency> |
| <dependency> |
| <groupId>com.puppycrawl.tools</groupId> |
| <artifactId>checkstyle</artifactId> |
| <version>${checkstyle.version}</version> |
| </dependency> |
| </dependencies> |
| </plugin> |
| <plugin> |
| <groupId>net.revelc.code</groupId> |
| <artifactId>warbucks-maven-plugin</artifactId> |
| <version>${maven.warbucks.version}</version> |
| <configuration> |
| <ignoreRuleFailures>false</ignoreRuleFailures> |
| <rules> |
| <rule> |
| <!-- exclude the generated java files --> |
| <classPattern>(?!.*(.generated.|.tmpl.|\$)).*</classPattern> |
| <includeTestClasses>false</includeTestClasses> |
| <includePublicClasses>true</includePublicClasses> |
| <includePackagePrivateClasses>false</includePackagePrivateClasses> |
| <includeProtectedClasses>false</includeProtectedClasses> |
| <includePrivateClasses>false</includePrivateClasses> |
| <classAnnotationPattern>org[.]apache[.]yetus[.]audience[.]InterfaceAudience.*</classAnnotationPattern> |
| </rule> |
| </rules> |
| </configuration> |
| <executions> |
| <execution> |
| <id>run-warbucks</id> |
| <goals> |
| <goal>check</goal> |
| <!-- runs at process-test-classes phase --> |
| </goals> |
| </execution> |
| </executions> |
| </plugin> |
| <plugin> |
| <groupId>org.apache.maven.plugins</groupId> |
| <artifactId>maven-enforcer-plugin</artifactId> |
| <version>${enforcer.version}</version> |
| <dependencies> |
| <dependency> |
| <groupId>org.codehaus.mojo</groupId> |
| <artifactId>extra-enforcer-rules</artifactId> |
| <version>${extra.enforcer.version}</version> |
| </dependency> |
| <dependency> |
| <groupId>de.skuzzle.enforcer</groupId> |
| <artifactId>restrict-imports-enforcer-rule</artifactId> |
| <version>${restrict-imports.enforcer.version}</version> |
| </dependency> |
| </dependencies> |
| </plugin> |
| <plugin> |
| <groupId>org.apache.maven.plugins</groupId> |
| <artifactId>maven-gpg-plugin</artifactId> |
| <version>${maven.gpg.version}</version> |
| </plugin> |
| </plugins> |
| </pluginManagement> |
| <plugins> |
| <plugin> |
| <groupId>org.codehaus.mojo</groupId> |
| <artifactId>flatten-maven-plugin</artifactId> |
| <version>1.3.0</version> |
| <configuration> |
| <embedBuildProfileDependencies>true</embedBuildProfileDependencies> |
| <updatePomFile>true</updatePomFile> |
| <flattenMode>oss</flattenMode> |
| </configuration> |
| <executions> |
| <!-- enable flattening --> |
| <execution> |
| <id>flatten</id> |
| <goals> |
| <goal>flatten</goal> |
| </goals> |
| <phase>process-resources</phase> |
| </execution> |
| <!-- ensure proper cleanup --> |
| <execution> |
| <id>flatten.clean</id> |
| <goals> |
| <goal>clean</goal> |
| </goals> |
| <phase>clean</phase> |
| </execution> |
| </executions> |
| </plugin> |
| <plugin> |
| <groupId>org.codehaus.mojo</groupId> |
| <artifactId>build-helper-maven-plugin</artifactId> |
| <executions> |
| <execution> |
| <id>negate-license-bundles-property</id> |
| <goals> |
| <goal>bsh-property</goal> |
| </goals> |
| <configuration> |
| <source>skip.license.check = !${license.bundles.dependencies};</source> |
| <properties> |
| <property>skip.license.check</property> |
| </properties> |
| </configuration> |
| </execution> |
| <!-- sets where to find the generated LICENSE files --> |
| <execution> |
| <id>create-license-file-path-property</id> |
| <goals> |
| <goal>regex-property</goal> |
| </goals> |
| <configuration> |
| <name>license.aggregate.path</name> |
| <value>${project.build.directory}/maven-shared-archive-resources/META-INF/LICENSE</value> |
| <regex>\\</regex> |
| <replacement>/</replacement> |
| <failIfNoMatch>false</failIfNoMatch> |
| </configuration> |
| </execution> |
| </executions> |
| </plugin> |
| <plugin> |
| <groupId>org.apache.maven.plugins</groupId> |
| <artifactId>maven-enforcer-plugin</artifactId> |
| <executions> |
| <execution> |
| <id>display-info</id> |
| <goals> |
| <goal>display-info</goal> |
| </goals> |
| <phase>initialize</phase> |
| <inherited>false</inherited> |
| </execution> |
| <execution> |
| <id>hadoop-profile-min-maven-min-java-banned-xerces</id> |
| <goals> |
| <goal>enforce</goal> |
| </goals> |
| <configuration> |
| <rules> |
| <!-- Help people activate profiles correctly --> |
| <evaluateBeanshell> |
| <condition>System.getProperty("hadoop-profile", "").isEmpty()</condition> |
| <message>The hadoop-profile property is unused, did you mean to set hadoop.profile instead?</message> |
| </evaluateBeanshell> |
| <!-- The earliest maven version we verify builds for via ASF Jenkins --> |
| <requireMavenVersion> |
| <version>[${maven.min.version},)</version> |
| <message>Maven is out of date. |
| HBase requires at least version ${maven.min.version} of Maven to properly build from source. |
| You appear to be using an older version. You can use either "mvn -version" or |
| "mvn enforcer:display-info" to verify what version is active. |
| See the reference guide on building for more information: https://hbase.apache.org/book.html#build</message> |
| </requireMavenVersion> |
| <!-- The earliest JVM version we verify builds for via ASF Jenkins --> |
| <requireJavaVersion> |
| <version>[${java.min.version},)</version> |
| <message>Java is out of date. |
| HBase requires at least version ${java.min.version} of the JDK to properly build from source. |
| You appear to be using an older version. You can use either "mvn -version" or |
| "mvn enforcer:display-info" to verify what version is active. |
| See the reference guide on building for more information: https://hbase.apache.org/book.html#build</message> |
| </requireJavaVersion> |
| <bannedDependencies> |
| <excludes> |
| <exclude>xerces:xercesImpl</exclude> |
| </excludes> |
| <message>We avoid adding our own Xerces jars to the classpath, see HBASE-16340.</message> |
| </bannedDependencies> |
| </rules> |
| </configuration> |
| </execution> |
| <execution> |
| <id>banned-jsr305</id> |
| <goals> |
| <goal>enforce</goal> |
| </goals> |
| <configuration> |
| <rules> |
| <bannedDependencies> |
| <excludes> |
| <exclude>com.google.code.findbugs:jsr305</exclude> |
| </excludes> |
| <message>We don't allow the JSR305 jar from the Findbugs project, see HBASE-16321.</message> |
| </bannedDependencies> |
| </rules> |
| </configuration> |
| </execution> |
| <execution> |
| <id>banned-scala</id> |
| <goals> |
| <goal>enforce</goal> |
| </goals> |
| <configuration> |
| <rules> |
| <bannedDependencies> |
| <excludes> |
| <exclude>org.scala-lang:scala-library</exclude> |
| </excludes> |
| <message>We don't allow Scala, see HBASE-13992.</message> |
| </bannedDependencies> |
| </rules> |
| </configuration> |
| </execution> |
| <execution> |
| <id>banned-commons-logging</id> |
| <goals> |
| <goal>enforce</goal> |
| </goals> |
| <configuration> |
| <rules> |
| <bannedDependencies> |
| <excludes> |
| <exclude>commons-logging:commons-logging</exclude> |
| </excludes> |
| <message>We don't use commons-logging any more, so do not depend on it directly.</message> |
| <searchTransitive>false</searchTransitive> |
| </bannedDependencies> |
| </rules> |
| </configuration> |
| </execution> |
| <execution> |
| <id>banned-other-logging-framework</id> |
| <goals> |
| <goal>enforce</goal> |
| </goals> |
| <configuration> |
| <rules> |
| <bannedDependencies> |
| <excludes> |
| <exclude>log4j:*</exclude> |
| <exclude>org.slf4j:slf4j-log4j12</exclude> |
| <exclude>ch.qos.reload4j:*</exclude> |
| <exclude>org.slf4j:slf4j-reload4j</exclude> |
| <exclude>ch.qos.logback:*</exclude> |
| </excludes> |
| <message>We do not allow other logging frameworks as now we use log4j2</message> |
| </bannedDependencies> |
| </rules> |
| </configuration> |
| </execution> |
| <execution> |
| <id>banned-jetty</id> |
| <goals> |
| <goal>enforce</goal> |
| </goals> |
| <configuration> |
| <rules> |
| <bannedDependencies> |
| <excludes> |
| <exclude>org.eclipse.jetty:**</exclude> |
| </excludes> |
| <message>Use shaded jetty instead</message> |
| <searchTransitive>false</searchTransitive> |
| </bannedDependencies> |
| </rules> |
| </configuration> |
| </execution> |
| <execution> |
| <id>banned-jersey</id> |
| <goals> |
| <goal>enforce</goal> |
| </goals> |
| <configuration> |
| <rules> |
| <bannedDependencies> |
| <excludes> |
| <exclude>org.glassfish.jersey.containers:**</exclude> |
| <exclude>org.glassfish.jersey.core:**</exclude> |
| </excludes> |
| <message>Use shaded jersey instead</message> |
| <searchTransitive>false</searchTransitive> |
| </bannedDependencies> |
| </rules> |
| </configuration> |
| </execution> |
| <execution> |
| <id>banned-htrace</id> |
| <goals> |
| <goal>enforce</goal> |
| </goals> |
| <configuration> |
| <rules> |
| <bannedDependencies> |
| <excludes> |
| <exclude>org.apache.htrace:**</exclude> |
| </excludes> |
| <message>Use OpenTelemetry instead</message> |
| <searchTransitive>false</searchTransitive> |
| </bannedDependencies> |
| </rules> |
| </configuration> |
| </execution> |
| <execution> |
| <id>banned-bouncycastle-jdk15on</id> |
| <goals> |
| <goal>enforce</goal> |
| </goals> |
| <configuration> |
| <rules> |
| <bannedDependencies> |
| <excludes> |
| <exclude>org.bouncycastle:*-jdk15on</exclude> |
| </excludes> |
| <message>Use org.bouncycastle:*-jdk18on instead</message> |
| <searchTransitive>true</searchTransitive> |
| </bannedDependencies> |
| </rules> |
| </configuration> |
| </execution> |
| <execution> |
| <id>check-aggregate-license</id> |
| <goals> |
| <goal>enforce</goal> |
| </goals> |
| <!-- must check after LICENSE is built at 'generate-resources' --> |
| <phase>process-resources</phase> |
| <configuration> |
| <rules> |
| <evaluateBeanshell> |
| <condition>File license = new File("${license.aggregate.path}"); |
| |
| // Beanshell does not support try-with-resources, |
| // so we must close this scanner manually |
| Scanner scanner = new Scanner(license); |
| |
| while (scanner.hasNextLine()) { |
| if (scanner.nextLine().startsWith("ERROR:")) { |
| scanner.close(); |
| return false; |
| } |
| } |
| scanner.close(); |
| return true;</condition> |
| <message>License errors detected, for more detail find ERROR in |
| ${license.aggregate.path}</message> |
| </evaluateBeanshell> |
| </rules> |
| <skip>${skip.license.check}</skip> |
| </configuration> |
| </execution> |
| <execution> |
| <id>banned-illegal-imports</id> |
| <goals> |
| <goal>enforce</goal> |
| </goals> |
| <phase>process-sources</phase> |
| <configuration> |
| <rules> |
| <restrictImports implementation="de.skuzzle.enforcer.restrictimports.rule.RestrictImports"> |
| <includeTestCode>true</includeTestCode> |
| <commentLineBufferSize>512</commentLineBufferSize> |
| <reason>Use SLF4j for logging</reason> |
| <bannedImports> |
| <bannedImport>org.apache.commons.logging.**</bannedImport> |
| <bannedImport>org.apache.log4j.**</bannedImport> |
| <bannedImport>org.apache.logging.log4j.**</bannedImport> |
| </bannedImports> |
| <exclusions> |
| <!-- Exclude this one as it is a log4j2 appender implementation --> |
| <exclusion>org.apache.hadoop.hbase.logging.HBaseTestAppender</exclusion> |
| </exclusions> |
| </restrictImports> |
| <restrictImports implementation="de.skuzzle.enforcer.restrictimports.rule.RestrictImports"> |
| <includeTestCode>false</includeTestCode> |
| <commentLineBufferSize>512</commentLineBufferSize> |
| <reason>Do not use log4j2 directly in code, see Log4jUtils in hbase-logging for more details.</reason> |
| <bannedImports> |
| <bannedImport>org.apache.logging.log4j.**</bannedImport> |
| </bannedImports> |
| </restrictImports> |
| <restrictImports implementation="de.skuzzle.enforcer.restrictimports.rule.RestrictImports"> |
| <includeTestCode>true</includeTestCode> |
| <commentLineBufferSize>512</commentLineBufferSize> |
| <reason>Use shaded version in hbase-thirdparty</reason> |
| <bannedImports> |
| <bannedImport>com.google.common.**</bannedImport> |
| <bannedImport>io.netty.**</bannedImport> |
| <bannedImport>org.apache.commons.cli.**</bannedImport> |
| <bannedImport>org.apache.commons.collections.**</bannedImport> |
| <bannedImport>org.apache.commons.collections4.**</bannedImport> |
| </bannedImports> |
| </restrictImports> |
| <restrictImports implementation="de.skuzzle.enforcer.restrictimports.rule.RestrictImports"> |
| <includeTestCode>true</includeTestCode> |
| <commentLineBufferSize>512</commentLineBufferSize> |
| <reason>Do not use shaded classes from other dependencies</reason> |
| <bannedImports> |
| <bannedImport>org.apache.curator.shaded.**</bannedImport> |
| <bannedImport>org.apache.htrace.shaded.**</bannedImport> |
| </bannedImports> |
| </restrictImports> |
| <restrictImports implementation="de.skuzzle.enforcer.restrictimports.rule.RestrictImports"> |
| <includeTestCode>true</includeTestCode> |
| <commentLineBufferSize>512</commentLineBufferSize> |
| <reason>Use shaded gson in hbase-thirdparty</reason> |
| <bannedImports> |
| <bannedImport>org.codehaus.jackson.**</bannedImport> |
| </bannedImports> |
| </restrictImports> |
| <restrictImports implementation="de.skuzzle.enforcer.restrictimports.rule.RestrictImports"> |
| <includeTestCode>true</includeTestCode> |
| <commentLineBufferSize>512</commentLineBufferSize> |
| <reason>Use commons lang 3</reason> |
| <bannedImports> |
| <bannedImport>org.apache.commons.lang.**</bannedImport> |
| </bannedImports> |
| </restrictImports> |
| <restrictImports implementation="de.skuzzle.enforcer.restrictimports.rule.RestrictImports"> |
| <includeTestCode>true</includeTestCode> |
| <commentLineBufferSize>512</commentLineBufferSize> |
| <reason>Use yetus IA and IS annotations</reason> |
| <bannedImports> |
| <bannedImport>org.apache.hadoop.classificatio.**</bannedImport> |
| </bannedImports> |
| </restrictImports> |
| <restrictImports implementation="de.skuzzle.enforcer.restrictimports.rule.RestrictImports"> |
| <includeTestCode>true</includeTestCode> |
| <commentLineBufferSize>512</commentLineBufferSize> |
| <reason>Do not use htrace</reason> |
| <bannedImports> |
| <bannedImport>org.htrace.**</bannedImport> |
| <bannedImport>org.apache.htrace.**</bannedImport> |
| </bannedImports> |
| </restrictImports> |
| <restrictImports implementation="de.skuzzle.enforcer.restrictimports.rule.RestrictImports"> |
| <includeTestCode>true</includeTestCode> |
| <commentLineBufferSize>512</commentLineBufferSize> |
| <reason>Use shaded jetty in hbase-thirdparty</reason> |
| <bannedImports> |
| <bannedImport>org.eclipse.jetty.**</bannedImport> |
| </bannedImports> |
| </restrictImports> |
| <restrictImports implementation="de.skuzzle.enforcer.restrictimports.rule.RestrictImports"> |
| <includeTestCode>true</includeTestCode> |
| <commentLineBufferSize>512</commentLineBufferSize> |
| <reason>Use shaded jersey in hbase-thirdparty</reason> |
| <bannedImports> |
| <bannedImport>org.glassfish.jersey.**</bannedImport> |
| </bannedImports> |
| </restrictImports> |
| <restrictImports implementation="de.skuzzle.enforcer.restrictimports.rule.RestrictImports"> |
| <includeTestCode>true</includeTestCode> |
| <commentLineBufferSize>512</commentLineBufferSize> |
| <reason>You should never use this style of annotations(i.e, 'this is for test only') |
| in IA.Public or IA.LimitedPrivate classes. Use IA.Private to tell users this is |
| not for public use. |
| For IA.Private classes, use RestrictedApi annotation in error prone instead.</reason> |
| <bannedImports> |
| <bannedImport>org.apache.hbase.thirdparty.com.google.common.annotations.VisibleForTesting</bannedImport> |
| </bannedImports> |
| </restrictImports> |
| <restrictImports implementation="de.skuzzle.enforcer.restrictimports.rule.RestrictImports"> |
| <includeTestCode>true</includeTestCode> |
| <commentLineBufferSize>512</commentLineBufferSize> |
| <reason>Use shaded javax.ws.rs in hbase-thirdparty</reason> |
| <bannedImports> |
| <bannedImport>javax.ws.rs.**</bannedImport> |
| </bannedImports> |
| </restrictImports> |
| <restrictImports implementation="de.skuzzle.enforcer.restrictimports.rule.RestrictImports"> |
| <includeTestCode>true</includeTestCode> |
| <commentLineBufferSize>512</commentLineBufferSize> |
| <reason>Use shaded jackson-jaxrs-json-provider in hbase-thirdparty</reason> |
| <bannedImports> |
| <bannedImport>com.fasterxml.jackson.jaxrs.**</bannedImport> |
| </bannedImports> |
| </restrictImports> |
| <restrictImports implementation="de.skuzzle.enforcer.restrictimports.rule.RestrictImports"> |
| <includeTestCode>true</includeTestCode> |
| <commentLineBufferSize>512</commentLineBufferSize> |
| <reason>Use junit4 instead</reason> |
| <bannedImports> |
| <bannedImport>junit.framework.**</bannedImport> |
| </bannedImports> |
| </restrictImports> |
| </rules> |
| </configuration> |
| </execution> |
| </executions> |
| </plugin> |
| <!-- parent-module only plugins --> |
| <plugin> |
| <groupId>org.codehaus.mojo</groupId> |
| <artifactId>xml-maven-plugin</artifactId> |
| <version>${xml.maven.version}</version> |
| <inherited>false</inherited> |
| <configuration> |
| <transformationSets> |
| <!-- For asciidoc --> |
| <transformationSet> |
| <!--Reaching up and over into common sub-module for hbase-default.xml--> |
| <dir>${basedir}/hbase-common/src/main/resources/</dir> |
| <includes> |
| <include>hbase-default.xml</include> |
| </includes> |
| <stylesheet>${basedir}/src/main/xslt/configuration_to_asciidoc_chapter.xsl</stylesheet> |
| <fileMappers> |
| <fileMapper implementation="org.codehaus.plexus.components.io.filemappers.RegExpFileMapper"> |
| <pattern>^(.*)\.xml$</pattern> |
| <replacement>$1.adoc</replacement> |
| </fileMapper> |
| </fileMappers> |
| <outputDir>${basedir}/target/asciidoc</outputDir> |
| </transformationSet> |
| </transformationSets> |
| </configuration> |
| <executions> |
| <execution> |
| <!-- Run the hbase-default.xml through a stylesheet so can show it in doc--> |
| <goals> |
| <goal>transform</goal> |
| </goals> |
| <phase>site</phase> |
| </execution> |
| </executions> |
| </plugin> |
| <!-- Special configuration for spotbugs just in the parent so |
| the filter file location can be more general (see definition in pluginManagement) --> |
| <plugin> |
| <groupId>com.github.spotbugs</groupId> |
| <artifactId>spotbugs-maven-plugin</artifactId> |
| <executions> |
| <execution> |
| <goals> |
| <goal>spotbugs</goal> |
| </goals> |
| <inherited>false</inherited> |
| <configuration> |
| <excludeFilterFile>${basedir}/dev-support/spotbugs-exclude.xml</excludeFilterFile> |
| </configuration> |
| </execution> |
| </executions> |
| </plugin> |
| <plugin> |
| <groupId>org.apache.maven.plugins</groupId> |
| <artifactId>maven-checkstyle-plugin</artifactId> |
| </plugin> |
| <plugin> |
| <groupId>org.apache.maven.plugins</groupId> |
| <artifactId>maven-site-plugin</artifactId> |
| <version>${maven-site.version}</version> |
| <configuration> |
| <siteDirectory>${basedir}/src/site</siteDirectory> |
| <customBundle>${basedir}/src/site/custom/project-info-report.properties</customBundle> |
| <inputEncoding>UTF-8</inputEncoding> |
| <outputEncoding>UTF-8</outputEncoding> |
| </configuration> |
| <dependencies> |
| <dependency> |
| <!-- add support for ssh/scp --> |
| <groupId>org.apache.maven.wagon</groupId> |
| <artifactId>wagon-ssh</artifactId> |
| <version>${wagon.ssh.version}</version> |
| </dependency> |
| </dependencies> |
| </plugin> |
| <!-- For AsciiDoc docs building --> |
| <plugin> |
| <groupId>org.asciidoctor</groupId> |
| <artifactId>asciidoctor-maven-plugin</artifactId> |
| <version>${asciidoctor.plugin.version}</version> |
| <inherited>false</inherited> |
| <configuration> |
| <outputDirectory>${project.reporting.outputDirectory}/</outputDirectory> |
| <doctype>book</doctype> |
| <attributes> |
| <docVersion>${project.version}</docVersion> |
| <imagesdir>images</imagesdir> |
| <source-highlighter>coderay</source-highlighter> |
| </attributes> |
| </configuration> |
| <dependencies> |
| <dependency> |
| <groupId>org.asciidoctor</groupId> |
| <artifactId>asciidoctorj-pdf</artifactId> |
| <version>${asciidoctorj.pdf.version}</version> |
| </dependency> |
| </dependencies> |
| <executions> |
| <execution> |
| <id>output-html</id> |
| <goals> |
| <goal>process-asciidoc</goal> |
| </goals> |
| <phase>site</phase> |
| <configuration> |
| <attributes> |
| <stylesheet>hbase.css</stylesheet> |
| </attributes> |
| <backend>html5</backend> |
| </configuration> |
| </execution> |
| <execution> |
| <id>output-pdf</id> |
| <goals> |
| <goal>process-asciidoc</goal> |
| </goals> |
| <phase>site</phase> |
| <configuration> |
| <backend>pdf</backend> |
| <attributes> |
| <pagenums/> |
| <toc/> |
| <idprefix/> |
| <idseparator>-</idseparator> |
| </attributes> |
| </configuration> |
| </execution> |
| </executions> |
| </plugin> |
| <plugin> |
| <groupId>org.apache.maven.plugins</groupId> |
| <artifactId>maven-resources-plugin</artifactId> |
| <!--$NO-MVN-MAN-VER$ --> |
| <inherited>false</inherited> |
| <configuration> |
| <escapeString>\</escapeString> |
| </configuration> |
| <executions> |
| <execution> |
| <id>copy-htaccess</id> |
| <goals> |
| <goal>copy-resources</goal> |
| </goals> |
| <phase>site</phase> |
| <configuration> |
| <outputDirectory>${project.reporting.outputDirectory}/</outputDirectory> |
| <resources> |
| <resource> |
| <directory>${basedir}/src/site/resources/</directory> |
| <includes> |
| <include>.htaccess</include> |
| </includes> |
| </resource> |
| </resources> |
| </configuration> |
| </execution> |
| <!-- needed to make the redirect above work --> |
| <execution> |
| <id>copy-empty-book-dir</id> |
| <goals> |
| <goal>copy-resources</goal> |
| </goals> |
| <phase>site</phase> |
| <configuration> |
| <outputDirectory>${project.reporting.outputDirectory}/</outputDirectory> |
| <resources> |
| <resource> |
| <directory>${basedir}/src/site/resources/</directory> |
| <includes> |
| <include>book/**</include> |
| </includes> |
| </resource> |
| </resources> |
| </configuration> |
| </execution> |
| </executions> |
| </plugin> |
| <plugin> |
| <groupId>org.apache.maven.plugins</groupId> |
| <artifactId>maven-antrun-plugin</artifactId> |
| <version>${maven.antrun.version}</version> |
| <inherited>false</inherited> |
| <!-- Rename the book.pdf generated by asciidoctor --> |
| <executions> |
| <execution> |
| <id>rename-pdf</id> |
| <goals> |
| <goal>run</goal> |
| </goals> |
| <phase>site</phase> |
| <configuration> |
| <target name="rename file"> |
| <move file="${project.reporting.outputDirectory}/book.pdf" tofile="${project.reporting.outputDirectory}/apache_hbase_reference_guide.pdf"/> |
| </target> |
| </configuration> |
| </execution> |
| </executions> |
| </plugin> |
| <plugin> |
| <groupId>org.codehaus.mojo</groupId> |
| <artifactId>buildnumber-maven-plugin</artifactId> |
| <configuration> |
| <timestampFormat>yyyy</timestampFormat> |
| <timestampPropertyName>build.year</timestampPropertyName> |
| </configuration> |
| <executions> |
| <execution> |
| <goals> |
| <goal>create-timestamp</goal> |
| </goals> |
| <phase>validate</phase> |
| </execution> |
| </executions> |
| </plugin> |
| <plugin> |
| <groupId>org.apache.felix</groupId> |
| <artifactId>maven-bundle-plugin</artifactId> |
| <version>${maven.bundle.version}</version> |
| <extensions>true</extensions> |
| <inherited>true</inherited> |
| </plugin> |
| <plugin> |
| <groupId>com.diffplug.spotless</groupId> |
| <artifactId>spotless-maven-plugin</artifactId> |
| <version>${spotless.version}</version> |
| <configuration> |
| <!-- define a language-specific format --> |
| <java> |
| <excludes> |
| <exclude>**/generated/*</exclude> |
| <exclude>**/package-info.java</exclude> |
| <exclude>**/.idea/**</exclude> |
| </excludes> |
| <!-- |
| e.g., remove the following lines: |
| "* @param paramName" |
| "* @throws ExceptionType" |
| "* @return returnType"' |
| Multiline to allow anchors on newlines |
| See https://errorprone.info/bugpattern/EmptyBlockTag |
| --> |
| <replaceRegex> |
| <name>Remove unhelpful javadoc stubs</name> |
| <searchRegex>(?m)^ *\* *@(?:param|throws|return) *\w* *\n</searchRegex> |
| <replacement/> |
| </replaceRegex> |
| <!-- |
| e.g., rewrite |
| /** @return blabla */ |
| or |
| /** |
| * @return blabla |
| */ |
| to |
| /** Returns blabla */ |
| See https://errorprone.info/bugpattern/MissingSummary |
| https://google.github.io/styleguide/javaguide.html#s7.2-summary-fragment |
| --> |
| <replaceRegex> |
| <name>Purge single returns tag multi line</name> |
| <searchRegex>(?m)^ */\*\*\n *\* *@return *(.*) *\n *\*/$</searchRegex> |
| <replacement>/** Returns $1 */</replacement> |
| </replaceRegex> |
| <replaceRegex> |
| <name>Purge single returns tag single line</name> |
| <searchRegex>^ */\*\* *@return *(.*) *\*/$</searchRegex> |
| <replacement>/** Returns $1 */</replacement> |
| </replaceRegex> |
| <!-- apply a specific flavor --> |
| <eclipse> |
| <file>${session.executionRootDirectory}/dev-support/hbase_eclipse_formatter.xml</file> |
| </eclipse> |
| <importOrder> |
| <file>${session.executionRootDirectory}/dev-support/eclipse.importorder</file> |
| </importOrder> |
| <trimTrailingWhitespace/> |
| <endWithNewline/> |
| <removeUnusedImports/> |
| </java> |
| <pom> |
| <sortPom> |
| <expandEmptyElements>false</expandEmptyElements> |
| </sortPom> |
| </pom> |
| <formats> |
| <!-- you can define as many formats as you want, each is independent --> |
| <format> |
| <!-- define the files to apply to --> |
| <includes> |
| <include>**/*.xml</include> |
| <include>**/*.sh</include> |
| <include>**/*.py</include> |
| <include>**/Jenkinsfile*</include> |
| <include>**/*.md</include> |
| <include>*.md</include> |
| <include>**/*.txt</include> |
| <include>*.txt</include> |
| </includes> |
| <excludes> |
| <exclude>**/target/**</exclude> |
| <exclude>**/dependency-reduced-pom.xml</exclude> |
| <exclude>**/.idea/**</exclude> |
| </excludes> |
| <!-- define the steps to apply to those files --> |
| <trimTrailingWhitespace/> |
| <endWithNewline/> |
| </format> |
| <format> |
| <!-- |
| We have some files which have special license header which must be kept, so |
| here we add a special format section to apply license header, and leave the |
| java section above only used for formatting code style |
| --> |
| <includes> |
| <include>src/main/java/**/*.java</include> |
| <include>src/test/java/**/*.java</include> |
| </includes> |
| <excludes> |
| <exclude>**/generated/*</exclude> |
| <exclude>**/package-info.java</exclude> |
| <!-- ByteRange, from Google protobuf --> |
| <exclude>src/main/java/org/apache/hadoop/hbase/util/AbstractByteRange.java</exclude> |
| <exclude>src/main/java/org/apache/hadoop/hbase/util/SimpleMutableByteRange.java</exclude> |
| <exclude>src/main/java/org/apache/hadoop/hbase/util/SimplePositionedMutableByteRange.java</exclude> |
| <!-- Metrics, from Josh Elser --> |
| <exclude>src/main/java/org/apache/hadoop/hbase/metrics/impl/HBaseMetrics2HadoopMetricsAdapter.java</exclude> |
| <!-- https://github.com/ept/warc-hadoop, from Martin Kleppmann --> |
| <exclude>src/test/java/org/apache/hadoop/hbase/test/util/warc/WARCFileReader.java</exclude> |
| <exclude>src/test/java/org/apache/hadoop/hbase/test/util/warc/WARCFileWriter.java</exclude> |
| <exclude>src/test/java/org/apache/hadoop/hbase/test/util/warc/WARCInputFormat.java</exclude> |
| <exclude>src/test/java/org/apache/hadoop/hbase/test/util/warc/WARCOutputFormat.java</exclude> |
| <exclude>src/test/java/org/apache/hadoop/hbase/test/util/warc/WARCRecord.java</exclude> |
| <exclude>src/test/java/org/apache/hadoop/hbase/test/util/warc/WARCWritable.java</exclude> |
| </excludes> |
| <licenseHeader> |
| <file>${session.executionRootDirectory}/dev-support/license-header</file> |
| <delimiter>package</delimiter> |
| </licenseHeader> |
| </format> |
| </formats> |
| </configuration> |
| </plugin> |
| </plugins> |
| <extensions> |
| <extension> |
| <groupId>kr.motd.maven</groupId> |
| <artifactId>os-maven-plugin</artifactId> |
| <version>${os.maven.version}</version> |
| </extension> |
| </extensions> |
| </build> |
| <!-- See https://jira.codehaus.org/browse/MSITE-443 why the settings need to be here and not in pluginManagement. --> |
| <reporting> |
| <plugins> |
| <plugin> |
| <artifactId>maven-project-info-reports-plugin</artifactId> |
| <version>${maven.project.info.report.version}</version> |
| <!-- see src/site/site.xml for selected reports --> |
| <configuration> |
| <dependencyLocationsEnabled>false</dependencyLocationsEnabled> |
| </configuration> |
| <reportSets> |
| <reportSet> |
| <reports> |
| <report>dependencies</report> |
| <report>dependency-convergence</report> |
| <report>dependency-info</report> |
| <report>dependency-management</report> |
| <report>index</report> |
| <report>issue-management</report> |
| <report>licenses</report> |
| <report>mailing-lists</report> |
| <report>plugin-management</report> |
| <report>plugins</report> |
| <report>team</report> |
| <report>scm</report> |
| <report>summary</report> |
| </reports> |
| </reportSet> |
| </reportSets> |
| </plugin> |
| |
| <plugin> |
| <groupId>org.apache.maven.plugins</groupId> |
| <artifactId>maven-javadoc-plugin</artifactId> |
| <configuration> |
| <tags> |
| <tag> |
| <name>apiNote</name> |
| <placement>a</placement> |
| <head>API Note:</head> |
| </tag> |
| </tags> |
| </configuration> |
| <reportSets> |
| <!-- Dev API --> |
| <reportSet> |
| <id>devapi</id> |
| <reports> |
| <report>aggregate-no-fork</report> |
| </reports> |
| <configuration> |
| <destDir>devapidocs</destDir> |
| <name>Developer API</name> |
| <description>The full HBase API, including private and unstable APIs</description> |
| <doctitle>Apache HBaseâ„¢ ${project.version} API</doctitle> |
| <sourceFileExcludes> |
| <exclude>**/generated/*</exclude> |
| <exclude>**/protobuf/*</exclude> |
| </sourceFileExcludes> |
| <excludePackageNames>org.apache.hadoop.hbase.tmpl.common:com.google.protobuf:org.apache.hadoop.hbase.generated*</excludePackageNames> |
| <show>private</show> |
| <!-- (shows all classes and members) --> |
| <quiet>true</quiet> |
| <linksource>true</linksource> |
| <sourcetab>2</sourcetab> |
| <validateLinks>true</validateLinks> |
| <fixClassComment>true</fixClassComment> |
| <fixFieldComment>true</fixFieldComment> |
| <fixMethodComment>true</fixMethodComment> |
| <fixTags>all</fixTags> |
| <notimestamp>true</notimestamp> |
| <locale>en_US</locale> |
| <!-- Pass some options straight to the javadoc executable since it is easier --> |
| <additionalJOption>-J-Xmx2G</additionalJOption> |
| <!-- JDK8 javadoc requires test scope transitive dependencies due to our custom doclet --> |
| <additionalDependencies> |
| <additionalDependency> |
| <groupId>org.mockito</groupId> |
| <artifactId>mockito-core</artifactId> |
| <version>${mockito.version}</version> |
| </additionalDependency> |
| <additionalDependency> |
| <groupId>org.hamcrest</groupId> |
| <artifactId>hamcrest-core</artifactId> |
| <version>${hamcrest.version}</version> |
| </additionalDependency> |
| <!-- javadoc tooling requires jsr305 due to references to it from things we rely on --> |
| <additionalDependency> |
| <groupId>com.google.code.findbugs</groupId> |
| <artifactId>jsr305</artifactId> |
| <version>3.0.2</version> |
| </additionalDependency> |
| </additionalDependencies> |
| <inherited>false</inherited> |
| </configuration> |
| </reportSet> |
| <reportSet> |
| <id>testdevapi</id> |
| <reports> |
| <report>test-aggregate-no-fork</report> |
| </reports> |
| <configuration> |
| <destDir>testdevapidocs</destDir> |
| <name>Test Developer API</name> |
| <description>The full HBase API test code, including private and unstable APIs</description> |
| <testDoctitle>Apache HBaseâ„¢ ${project.version} Test API</testDoctitle> |
| <sourceFileExcludes> |
| <exclude>**/generated/*</exclude> |
| <exclude>**/protobuf/*</exclude> |
| </sourceFileExcludes> |
| <excludePackageNames>org.apache.hadoop.hbase.tmpl.common:com.google.protobuf:org.apache.hadoop.hbase.generated*</excludePackageNames> |
| <show>private</show> |
| <!-- (shows all classes and members) --> |
| <quiet>true</quiet> |
| <linksource>true</linksource> |
| <sourcetab>2</sourcetab> |
| <validateLinks>true</validateLinks> |
| <fixClassComment>true</fixClassComment> |
| <fixFieldComment>true</fixFieldComment> |
| <fixMethodComment>true</fixMethodComment> |
| <fixTags>all</fixTags> |
| <notimestamp>true</notimestamp> |
| <locale>en_US</locale> |
| <!-- Pass some options straight to the javadoc executable since it is easier --> |
| <additionalJOption>-J-Xmx2G</additionalJOption> |
| <!-- JDK8 javadoc requires test scope transitive dependencies due to our custom doclet --> |
| <additionalDependencies> |
| <additionalDependency> |
| <groupId>org.mockito</groupId> |
| <artifactId>mockito-core</artifactId> |
| <version>${mockito.version}</version> |
| </additionalDependency> |
| <additionalDependency> |
| <groupId>org.hamcrest</groupId> |
| <artifactId>hamcrest-core</artifactId> |
| <version>${hamcrest.version}</version> |
| </additionalDependency> |
| <!-- javadoc tooling requires jsr305 due to references to it from things we rely on --> |
| <additionalDependency> |
| <groupId>com.google.code.findbugs</groupId> |
| <artifactId>jsr305</artifactId> |
| <version>3.0.2</version> |
| </additionalDependency> |
| </additionalDependencies> |
| <inherited>false</inherited> |
| </configuration> |
| </reportSet> |
| |
| <!-- User API --> |
| <reportSet> |
| <id>userapi</id> |
| <reports> |
| <report>aggregate-no-fork</report> |
| </reports> |
| <configuration> |
| <doclet>org.apache.yetus.audience.tools.IncludePublicAnnotationsStandardDoclet</doclet> |
| <docletArtifact> |
| <groupId>org.apache.yetus</groupId> |
| <artifactId>audience-annotations</artifactId> |
| <version>${javadoc.audience-annotations.version}</version> |
| </docletArtifact> |
| <useStandardDocletOptions>true</useStandardDocletOptions> |
| <destDir>apidocs</destDir> |
| <name>User API</name> |
| <description>The HBase Application Programmer's API</description> |
| <doctitle>Apache HBaseâ„¢ ${project.version} API</doctitle> |
| <excludePackageNames>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:*.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.metrics2*:org.apache.hadoop.hbase.io.compress*</excludePackageNames> |
| <!-- switch on dependency-driven aggregation --> |
| <includeDependencySources>false</includeDependencySources> |
| <sourceFilesExclude>**/generated/*</sourceFilesExclude> |
| <show>protected</show> |
| <!-- (shows only public and protected classes and members) --> |
| <quiet>true</quiet> |
| <linksource>true</linksource> |
| <sourcetab>2</sourcetab> |
| <validateLinks>true</validateLinks> |
| <fixClassComment>true</fixClassComment> |
| <fixFieldComment>true</fixFieldComment> |
| <fixMethodComment>true</fixMethodComment> |
| <fixTags>all</fixTags> |
| <notimestamp>true</notimestamp> |
| <locale>en_US</locale> |
| <!-- Pass some options straight to the javadoc executable since it is easier --> |
| <additionalJOption>-J-Xmx2G</additionalJOption> |
| <!-- JDK8 javadoc requires test scope transitive dependencies due to our custom doclet --> |
| <additionalDependencies> |
| <additionalDependency> |
| <groupId>org.mockito</groupId> |
| <artifactId>mockito-core</artifactId> |
| <version>${mockito.version}</version> |
| </additionalDependency> |
| <additionalDependency> |
| <groupId>org.hamcrest</groupId> |
| <artifactId>hamcrest-core</artifactId> |
| <version>${hamcrest.version}</version> |
| </additionalDependency> |
| <!-- javadoc tooling requires jsr305 due to references to it from things we rely on --> |
| <additionalDependency> |
| <groupId>com.google.code.findbugs</groupId> |
| <artifactId>jsr305</artifactId> |
| <version>3.0.2</version> |
| </additionalDependency> |
| </additionalDependencies> |
| <inherited>false</inherited> |
| </configuration> |
| </reportSet> |
| <!-- User Test API --> |
| <reportSet> |
| <id>testuserapi</id> |
| <reports> |
| <report>test-aggregate-no-fork</report> |
| </reports> |
| <configuration> |
| <doclet>org.apache.yetus.audience.tools.IncludePublicAnnotationsStandardDoclet</doclet> |
| <docletArtifact> |
| <groupId>org.apache.yetus</groupId> |
| <artifactId>audience-annotations</artifactId> |
| <version>${javadoc.audience-annotations.version}</version> |
| </docletArtifact> |
| <useStandardDocletOptions>true</useStandardDocletOptions> |
| <destDir>testapidocs</destDir> |
| <name>Test User API</name> |
| <description>The HBase Application Programmer's API test code</description> |
| <testDoctitle>Apache HBaseâ„¢ ${project.version} Test API</testDoctitle> |
| <excludePackageNames>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:*.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.metrics2*:org.apache.hadoop.hbase.io.compress*</excludePackageNames> |
| <!-- switch on dependency-driven aggregation --> |
| <includeDependencySources>false</includeDependencySources> |
| <sourceFilesExclude>**/generated/*</sourceFilesExclude> |
| <show>protected</show> |
| <!-- (shows only public and protected classes and members) --> |
| <quiet>true</quiet> |
| <linksource>true</linksource> |
| <sourcetab>2</sourcetab> |
| <validateLinks>true</validateLinks> |
| <fixClassComment>true</fixClassComment> |
| <fixFieldComment>true</fixFieldComment> |
| <fixMethodComment>true</fixMethodComment> |
| <fixTags>all</fixTags> |
| <notimestamp>true</notimestamp> |
| <locale>en_US</locale> |
| <!-- Pass some options straight to the javadoc executable since it is easier --> |
| <additionalJOption>-J-Xmx2G</additionalJOption> |
| <!-- JDK8 javadoc requires test scope transitive dependencies due to our custom doclet --> |
| <additionalDependencies> |
| <additionalDependency> |
| <groupId>org.mockito</groupId> |
| <artifactId>mockito-core</artifactId> |
| <version>${mockito.version}</version> |
| </additionalDependency> |
| <additionalDependency> |
| <groupId>org.hamcrest</groupId> |
| <artifactId>hamcrest-core</artifactId> |
| <version>${hamcrest.version}</version> |
| </additionalDependency> |
| <!-- javadoc tooling requires jsr305 due to references to it from things we rely on --> |
| <additionalDependency> |
| <groupId>com.google.code.findbugs</groupId> |
| <artifactId>jsr305</artifactId> |
| <version>3.0.2</version> |
| </additionalDependency> |
| </additionalDependencies> |
| <inherited>false</inherited> |
| </configuration> |
| </reportSet> |
| </reportSets> |
| </plugin> |
| |
| <plugin> |
| <groupId>org.apache.maven.plugins</groupId> |
| <artifactId>maven-checkstyle-plugin</artifactId> |
| <version>${maven.checkstyle.version}</version> |
| <configuration> |
| <excludes>target/**</excludes> |
| </configuration> |
| </plugin> |
| |
| </plugins> |
| </reporting> |
| |
| <!-- |
| To publish, use the following settings.xml file ( placed in ~/.m2/settings.xml ) |
| |
| <settings> |
| <servers> |
| <server> |
| <id>apache.releases.https</id> |
| <username>hbase_committer</username> |
| <password>********</password> |
| </server> |
| |
| <server> |
| <id>apache.snapshots.https</id> |
| <username>hbase_committer</username> |
| <password>********</password> |
| </server> |
| |
| </servers> |
| </settings> |
| |
| $ mvn deploy |
| (or) |
| $ mvn -s /my/path/settings.xml deploy |
| |
| --> |
| <profiles> |
| <profile> |
| <id>build-with-jdk8</id> |
| <activation> |
| <jdk>1.8</jdk> |
| </activation> |
| <properties> |
| <maven.compiler.source>${compileSource}</maven.compiler.source> |
| <maven.compiler.target>${compileSource}</maven.compiler.target> |
| </properties> |
| </profile> |
| <profile> |
| <id>build-with-jdk11</id> |
| <activation> |
| <jdk>[11,)</jdk> |
| </activation> |
| <properties> |
| <maven.compiler.release>${releaseTarget}</maven.compiler.release> |
| <!-- TODO: replicate logic for windows support --> |
| <argLine>${hbase-surefire.jdk11.flags} |
| ${hbase-surefire.argLine} |
| @{jacocoArgLine}</argLine> |
| <!-- |
| Value to use for surefire when running jdk11. |
| TODO: replicate logic for windows |
| --> |
| <surefire.Xmx>2200m</surefire.Xmx> |
| <!-- |
| com.sun.javadoc and com.sun.tools.doclets are both deprecated in java 11 and will |
| fail the javadoc generating, so we need to use yetus 0.14.1 where it uses jdk.javadoc |
| and jdk.javadoc.doclet instead |
| --> |
| <javadoc.audience-annotations.version>0.14.1</javadoc.audience-annotations.version> |
| </properties> |
| <build> |
| <pluginManagement> |
| <plugins> |
| <plugin> |
| <groupId>org.apache.maven.plugins</groupId> |
| <artifactId>maven-javadoc-plugin</artifactId> |
| <version>${maven.javadoc.version}</version> |
| <configuration> |
| <source>${compileSource}</source> |
| <!-- |
| Need to add this option to ignore the source errors, epsecially that we reference |
| test code in hbase-testing-util's main code. |
| --> |
| <additionalOptions>--ignore-source-errors</additionalOptions> |
| <additionalJOptions> |
| <additionalJOption>-J-Xmx2G</additionalJOption> |
| <additionalJOption>-J--add-exports</additionalJOption> |
| <additionalJOption>-Jjdk.javadoc/jdk.javadoc.internal.tool=ALL-UNNAMED</additionalJOption> |
| </additionalJOptions> |
| </configuration> |
| </plugin> |
| </plugins> |
| </pluginManagement> |
| </build> |
| </profile> |
| <profile> |
| <id>build-with-jdk17</id> |
| <activation> |
| <jdk>[17,)</jdk> |
| </activation> |
| <properties> |
| <argLine>${hbase-surefire.jdk11.flags} |
| ${hbase-surefire.jdk17.flags} |
| ${hbase-surefire.argLine} |
| @{jacocoArgLine}</argLine> |
| </properties> |
| </profile> |
| <!-- profile activated by the Jenkins patch testing job --> |
| <profile> |
| <id>jenkins.patch</id> |
| <activation> |
| <activeByDefault>false</activeByDefault> |
| <property> |
| <name>HBasePatchProcess</name> |
| </property> |
| </activation> |
| <properties> |
| <surefire.rerunFailingTestsCount>2</surefire.rerunFailingTestsCount> |
| </properties> |
| <build> |
| <plugins> |
| <plugin> |
| <groupId>org.apache.maven.plugins</groupId> |
| <artifactId>maven-antrun-plugin</artifactId> |
| <inherited>false</inherited> |
| <executions> |
| <execution> |
| <goals> |
| <goal>run</goal> |
| </goals> |
| <phase>validate</phase> |
| <configuration> |
| <tasks> |
| <echo>Maven Execution Environment</echo> |
| <echo>MAVEN_OPTS="${env.MAVEN_OPTS}"</echo> |
| </tasks> |
| </configuration> |
| </execution> |
| </executions> |
| </plugin> |
| </plugins> |
| </build> |
| </profile> |
| <profile> |
| <id>jacoco</id> |
| <activation> |
| <activeByDefault>false</activeByDefault> |
| </activation> |
| <properties> |
| <sonar.exclusions>**/generated/**/*</sonar.exclusions> |
| <sonar.coverage.exclusions>**/generated/**/*,hbase-it/**,**/hbase-logging/**/*,**/hbase-testing-util/**/*, |
| **/hbase-protocol-shaded/**/*,**/hbase-external-blockcache/**/*,**/hbase-examples/**/*, |
| **/hbase-archetypes/**/*</sonar.coverage.exclusions> |
| </properties> |
| <build> |
| <plugins> |
| <plugin> |
| <groupId>org.jacoco</groupId> |
| <artifactId>jacoco-maven-plugin</artifactId> |
| <version>${jacoco.version}</version> |
| <configuration> |
| <excludes> |
| <exclude>**/generated/**/*</exclude> |
| </excludes> |
| </configuration> |
| <executions> |
| <execution> |
| <id>prepare-agent</id> |
| <goals> |
| <goal>prepare-agent</goal> |
| </goals> |
| <phase>initialize</phase> |
| <configuration> |
| <propertyName>jacocoArgLine</propertyName> |
| <append>true</append> |
| </configuration> |
| </execution> |
| <execution> |
| <id>report</id> |
| <goals> |
| <goal>report</goal> |
| </goals> |
| <phase>prepare-package</phase> |
| </execution> |
| </executions> |
| </plugin> |
| <plugin> |
| <groupId>org.sonarsource.scanner.maven</groupId> |
| <artifactId>sonar-maven-plugin</artifactId> |
| <version>${sonar-maven-plugin.version}</version> |
| </plugin> |
| </plugins> |
| </build> |
| </profile> |
| <profile> |
| <id>os.linux</id> |
| <activation> |
| <activeByDefault>false</activeByDefault> |
| <os> |
| <family>Linux</family> |
| </os> |
| </activation> |
| <properties> |
| <build.platform>${os.name}-${os.arch}-${sun.arch.data.model}</build.platform> |
| </properties> |
| </profile> |
| <profile> |
| <id>os.mac</id> |
| <activation> |
| <os> |
| <family>Mac</family> |
| </os> |
| </activation> |
| <properties> |
| <build.platform>Mac_OS_X-${sun.arch.data.model}</build.platform> |
| </properties> |
| </profile> |
| <profile> |
| <id>os.windows</id> |
| <activation> |
| <os> |
| <family>Windows</family> |
| </os> |
| </activation> |
| <properties> |
| <build.platform>cygwin</build.platform> |
| <argLine>${hbase-surefire.cygwin-argLine} @{jacocoArgLine}</argLine> |
| </properties> |
| </profile> |
| <!-- this profile should match the name of the release profile in the root asf pom --> |
| <profile> |
| <id>apache-release</id> |
| <build> |
| <plugins> |
| <!-- This should insert itself in place of the normal deploy plugin and then |
| handle either closing or dropping the staging repository for us depending |
| on if the build succeeds. |
| --> |
| <plugin> |
| <groupId>org.sonatype.plugins</groupId> |
| <artifactId>nexus-staging-maven-plugin</artifactId> |
| <version>1.6.8</version> |
| <extensions>true</extensions> |
| <configuration> |
| <nexusUrl>https://repository.apache.org/</nexusUrl> |
| <serverId>apache.releases.https</serverId> |
| </configuration> |
| </plugin> |
| </plugins> |
| </build> |
| </profile> |
| <!-- this profile should be activated for release builds --> |
| <profile> |
| <id>release</id> |
| <build> |
| <plugins> |
| <plugin> |
| <groupId>org.apache.rat</groupId> |
| <artifactId>apache-rat-plugin</artifactId> |
| <executions> |
| <execution> |
| <goals> |
| <goal>check</goal> |
| </goals> |
| <phase>package</phase> |
| </execution> |
| </executions> |
| </plugin> |
| <plugin> |
| <groupId>org.apache.maven.plugins</groupId> |
| <artifactId>maven-enforcer-plugin</artifactId> |
| <version>${enforcer.version}</version> |
| <configuration> |
| <rules> |
| <enforceBytecodeVersion> |
| <maxJdkVersion>${compileSource}</maxJdkVersion> |
| <message>HBase has unsupported dependencies. |
| HBase requires that all dependencies be compiled with version ${compileSource} or earlier |
| of the JDK to properly build from source. You appear to be using a newer dependency. You can use |
| either "mvn -version" or "mvn enforcer:display-info" to verify what version is active. |
| Non-release builds can temporarily build with a newer JDK version by setting the |
| 'compileSource' property (eg. mvn -DcompileSource=1.8 clean package).</message> |
| <ignoreClasses> |
| <ignoreClass>module-info</ignoreClass> |
| </ignoreClasses> |
| </enforceBytecodeVersion> |
| </rules> |
| </configuration> |
| <dependencies> |
| <dependency> |
| <groupId>org.codehaus.mojo</groupId> |
| <artifactId>extra-enforcer-rules</artifactId> |
| <version>${extra.enforcer.version}</version> |
| </dependency> |
| </dependencies> |
| </plugin> |
| <plugin> |
| <groupId>org.cyclonedx</groupId> |
| <artifactId>cyclonedx-maven-plugin</artifactId> |
| <version>2.7.10</version> |
| <executions> |
| <execution> |
| <goals> |
| <goal>makeBom</goal> |
| </goals> |
| <phase>package</phase> |
| </execution> |
| </executions> |
| </plugin> |
| </plugins> |
| </build> |
| </profile> |
| <!-- Dependency management profiles for submodules when building against specific hadoop branches.--> |
| <!-- Submodules that need hadoop dependencies should declare |
| profiles with activation properties matching the profile here. |
| Generally, it should be sufficient to copy the first |
| few lines of the profile you want to match. --> |
| <!-- Profile for building against Hadoop 3.0.0. Activate by default --> |
| <profile> |
| <id>hadoop-3.0</id> |
| <activation> |
| <property> |
| <name>!hadoop.profile</name> |
| </property> |
| </activation> |
| <properties> |
| <hadoop.version>${hadoop-three.version}</hadoop.version> |
| <assembly.file>src/main/assembly/hadoop-three-compat.xml</assembly.file> |
| </properties> |
| <dependencyManagement> |
| <dependencies> |
| <dependency> |
| <groupId>org.apache.hadoop</groupId> |
| <artifactId>hadoop-mapreduce-client-core</artifactId> |
| <version>${hadoop-three.version}</version> |
| <exclusions> |
| <exclusion> |
| <groupId>com.google.guava</groupId> |
| <artifactId>guava</artifactId> |
| </exclusion> |
| <exclusion> |
| <groupId>com.sun.jersey</groupId> |
| <artifactId>jersey-core</artifactId> |
| </exclusion> |
| <exclusion> |
| <groupId>javax.xml.bind</groupId> |
| <artifactId>jaxb-api</artifactId> |
| </exclusion> |
| <exclusion> |
| <groupId>javax.ws.rs</groupId> |
| <artifactId>jsr311-api</artifactId> |
| </exclusion> |
| <exclusion> |
| <groupId>org.codehaus.jackson</groupId> |
| <artifactId>*</artifactId> |
| </exclusion> |
| <exclusion> |
| <groupId>javax.servlet</groupId> |
| <artifactId>servlet-api</artifactId> |
| </exclusion> |
| <exclusion> |
| <groupId>javax.inject</groupId> |
| <artifactId>javax.inject</artifactId> |
| </exclusion> |
| <exclusion> |
| <groupId>com.google.guava</groupId> |
| <artifactId>guava</artifactId> |
| </exclusion> |
| <exclusion> |
| <groupId>org.slf4j</groupId> |
| <artifactId>slf4j-log4j12</artifactId> |
| </exclusion> |
| <exclusion> |
| <groupId>log4j</groupId> |
| <artifactId>log4j</artifactId> |
| </exclusion> |
| <exclusion> |
| <groupId>ch.qos.reload4j</groupId> |
| <artifactId>reload4j</artifactId> |
| </exclusion> |
| <exclusion> |
| <groupId>org.slf4j</groupId> |
| <artifactId>slf4j-reload4j</artifactId> |
| </exclusion> |
| </exclusions> |
| </dependency> |
| <dependency> |
| <groupId>org.apache.hadoop</groupId> |
| <artifactId>hadoop-mapreduce-client-app</artifactId> |
| <version>${hadoop-three.version}</version> |
| <type>test-jar</type> |
| <exclusions> |
| <exclusion> |
| <groupId>org.codehaus.jackson</groupId> |
| <artifactId>jackson-mapper-asl</artifactId> |
| </exclusion> |
| <exclusion> |
| <groupId>org.codehaus.jackson</groupId> |
| <artifactId>jackson-core-asl</artifactId> |
| </exclusion> |
| <exclusion> |
| <groupId>javax.xml.bind</groupId> |
| <artifactId>jaxb-api</artifactId> |
| </exclusion> |
| <exclusion> |
| <groupId>javax.ws.rs</groupId> |
| <artifactId>jsr311-api</artifactId> |
| </exclusion> |
| <exclusion> |
| <groupId>org.codehaus.jackson</groupId> |
| <artifactId>*</artifactId> |
| </exclusion> |
| <exclusion> |
| <groupId>javax.xml.bind</groupId> |
| <artifactId>jaxb-api</artifactId> |
| </exclusion> |
| <exclusion> |
| <groupId>javax.ws.rs</groupId> |
| <artifactId>jsr311-api</artifactId> |
| </exclusion> |
| <exclusion> |
| <groupId>org.slf4j</groupId> |
| <artifactId>slf4j-log4j12</artifactId> |
| </exclusion> |
| <exclusion> |
| <groupId>log4j</groupId> |
| <artifactId>log4j</artifactId> |
| </exclusion> |
| <exclusion> |
| <groupId>ch.qos.reload4j</groupId> |
| <artifactId>reload4j</artifactId> |
| </exclusion> |
| <exclusion> |
| <groupId>org.slf4j</groupId> |
| <artifactId>slf4j-reload4j</artifactId> |
| </exclusion> |
| </exclusions> |
| </dependency> |
| <dependency> |
| <groupId>org.apache.hadoop</groupId> |
| <artifactId>hadoop-mapreduce-client-jobclient</artifactId> |
| <version>${hadoop-three.version}</version> |
| <exclusions> |
| <exclusion> |
| <groupId>com.sun.jersey</groupId> |
| <artifactId>jersey-core</artifactId> |
| </exclusion> |
| <exclusion> |
| <groupId>javax.servlet</groupId> |
| <artifactId>servlet-api</artifactId> |
| </exclusion> |
| <exclusion> |
| <groupId>org.slf4j</groupId> |
| <artifactId>slf4j-log4j12</artifactId> |
| </exclusion> |
| <exclusion> |
| <groupId>ch.qos.reload4j</groupId> |
| <artifactId>reload4j</artifactId> |
| </exclusion> |
| <exclusion> |
| <groupId>org.slf4j</groupId> |
| <artifactId>slf4j-reload4j</artifactId> |
| </exclusion> |
| </exclusions> |
| </dependency> |
| <dependency> |
| <groupId>org.apache.hadoop</groupId> |
| <artifactId>hadoop-mapreduce-client-jobclient</artifactId> |
| <version>${hadoop-three.version}</version> |
| <type>test-jar</type> |
| <scope>test</scope> |
| <exclusions> |
| <exclusion> |
| <groupId>com.sun.jersey</groupId> |
| <artifactId>jersey-core</artifactId> |
| </exclusion> |
| <exclusion> |
| <groupId>javax.servlet</groupId> |
| <artifactId>servlet-api</artifactId> |
| </exclusion> |
| <exclusion> |
| <groupId>org.slf4j</groupId> |
| <artifactId>slf4j-log4j12</artifactId> |
| </exclusion> |
| <exclusion> |
| <groupId>ch.qos.reload4j</groupId> |
| <artifactId>reload4j</artifactId> |
| </exclusion> |
| <exclusion> |
| <groupId>org.slf4j</groupId> |
| <artifactId>slf4j-reload4j</artifactId> |
| </exclusion> |
| </exclusions> |
| </dependency> |
| <dependency> |
| <groupId>org.apache.hadoop</groupId> |
| <artifactId>hadoop-hdfs</artifactId> |
| <version>${hadoop-three.version}</version> |
| <exclusions> |
| <exclusion> |
| <groupId>com.sun.jersey</groupId> |
| <artifactId>jersey-core</artifactId> |
| </exclusion> |
| <exclusion> |
| <groupId>com.sun.jersey</groupId> |
| <artifactId>jersey-server</artifactId> |
| </exclusion> |
| <exclusion> |
| <groupId>javax.servlet.jsp</groupId> |
| <artifactId>jsp-api</artifactId> |
| </exclusion> |
| <exclusion> |
| <groupId>javax.servlet</groupId> |
| <artifactId>servlet-api</artifactId> |
| </exclusion> |
| <exclusion> |
| <groupId>stax</groupId> |
| <artifactId>stax-api</artifactId> |
| </exclusion> |
| <exclusion> |
| <groupId>xerces</groupId> |
| <artifactId>xercesImpl</artifactId> |
| </exclusion> |
| <exclusion> |
| <groupId>org.codehaus.jackson</groupId> |
| <artifactId>*</artifactId> |
| </exclusion> |
| <exclusion> |
| <groupId>com.google.guava</groupId> |
| <artifactId>guava</artifactId> |
| </exclusion> |
| <exclusion> |
| <groupId>org.slf4j</groupId> |
| <artifactId>slf4j-log4j12</artifactId> |
| </exclusion> |
| <exclusion> |
| <groupId>log4j</groupId> |
| <artifactId>log4j</artifactId> |
| </exclusion> |
| <exclusion> |
| <groupId>ch.qos.reload4j</groupId> |
| <artifactId>reload4j</artifactId> |
| </exclusion> |
| <exclusion> |
| <groupId>org.slf4j</groupId> |
| <artifactId>slf4j-reload4j</artifactId> |
| </exclusion> |
| <exclusion> |
| <groupId>org.fusesource.leveldbjni</groupId> |
| <artifactId>leveldbjni-all</artifactId> |
| </exclusion> |
| <exclusion> |
| <groupId>org.openlabtesting.leveldbjni</groupId> |
| <artifactId>leveldbjni-all</artifactId> |
| </exclusion> |
| </exclusions> |
| </dependency> |
| <dependency> |
| <groupId>org.apache.hadoop</groupId> |
| <artifactId>hadoop-hdfs</artifactId> |
| <version>${hadoop-three.version}</version> |
| <type>test-jar</type> |
| <scope>test</scope> |
| <exclusions> |
| <exclusion> |
| <groupId>javax.servlet.jsp</groupId> |
| <artifactId>jsp-api</artifactId> |
| </exclusion> |
| <exclusion> |
| <groupId>javax.servlet</groupId> |
| <artifactId>servlet-api</artifactId> |
| </exclusion> |
| <exclusion> |
| <groupId>stax</groupId> |
| <artifactId>stax-api</artifactId> |
| </exclusion> |
| <exclusion> |
| <groupId>xerces</groupId> |
| <artifactId>xercesImpl</artifactId> |
| </exclusion> |
| <exclusion> |
| <groupId>org.codehaus.jackson</groupId> |
| <artifactId>*</artifactId> |
| </exclusion> |
| <exclusion> |
| <groupId>com.google.guava</groupId> |
| <artifactId>guava</artifactId> |
| </exclusion> |
| <exclusion> |
| <groupId>com.sun.jersey</groupId> |
| <artifactId>jersey-core</artifactId> |
| </exclusion> |
| <exclusion> |
| <groupId>org.slf4j</groupId> |
| <artifactId>slf4j-log4j12</artifactId> |
| </exclusion> |
| <exclusion> |
| <groupId>log4j</groupId> |
| <artifactId>log4j</artifactId> |
| </exclusion> |
| <exclusion> |
| <groupId>ch.qos.reload4j</groupId> |
| <artifactId>reload4j</artifactId> |
| </exclusion> |
| <exclusion> |
| <groupId>org.slf4j</groupId> |
| <artifactId>slf4j-reload4j</artifactId> |
| </exclusion> |
| </exclusions> |
| </dependency> |
| <dependency> |
| <groupId>org.apache.hadoop</groupId> |
| <artifactId>hadoop-auth</artifactId> |
| <version>${hadoop-three.version}</version> |
| <exclusions> |
| <exclusion> |
| <groupId>com.google.guava</groupId> |
| <artifactId>guava</artifactId> |
| </exclusion> |
| <exclusion> |
| <groupId>net.minidev</groupId> |
| <artifactId>json-smart</artifactId> |
| </exclusion> |
| <exclusion> |
| <groupId>org.slf4j</groupId> |
| <artifactId>slf4j-log4j12</artifactId> |
| </exclusion> |
| <exclusion> |
| <groupId>log4j</groupId> |
| <artifactId>log4j</artifactId> |
| </exclusion> |
| <exclusion> |
| <groupId>ch.qos.reload4j</groupId> |
| <artifactId>reload4j</artifactId> |
| </exclusion> |
| <exclusion> |
| <groupId>org.slf4j</groupId> |
| <artifactId>slf4j-reload4j</artifactId> |
| </exclusion> |
| </exclusions> |
| </dependency> |
| <dependency> |
| <groupId>org.apache.hadoop</groupId> |
| <artifactId>hadoop-common</artifactId> |
| <version>${hadoop-three.version}</version> |
| <exclusions> |
| <exclusion> |
| <groupId>com.sun.jersey</groupId> |
| <artifactId>jersey-core</artifactId> |
| </exclusion> |
| <exclusion> |
| <groupId>com.sun.jersey</groupId> |
| <artifactId>jersey-json</artifactId> |
| </exclusion> |
| <exclusion> |
| <groupId>com.sun.jersey</groupId> |
| <artifactId>jersey-servlet</artifactId> |
| </exclusion> |
| <exclusion> |
| <groupId>com.sun.jersey</groupId> |
| <artifactId>jersey-server</artifactId> |
| </exclusion> |
| <exclusion> |
| <groupId>javax.servlet.jsp</groupId> |
| <artifactId>jsp-api</artifactId> |
| </exclusion> |
| <exclusion> |
| <groupId>javax.servlet</groupId> |
| <artifactId>javax.servlet-api</artifactId> |
| </exclusion> |
| <exclusion> |
| <groupId>stax</groupId> |
| <artifactId>stax-api</artifactId> |
| </exclusion> |
| <exclusion> |
| <groupId>com.google.code.findbugs</groupId> |
| <artifactId>jsr305</artifactId> |
| </exclusion> |
| <exclusion> |
| <groupId>junit</groupId> |
| <artifactId>junit</artifactId> |
| </exclusion> |
| <exclusion> |
| <groupId>org.codehaus.jackson</groupId> |
| <artifactId>*</artifactId> |
| </exclusion> |
| <exclusion> |
| <groupId>org.slf4j</groupId> |
| <artifactId>slf4j-log4j12</artifactId> |
| </exclusion> |
| <exclusion> |
| <groupId>log4j</groupId> |
| <artifactId>log4j</artifactId> |
| </exclusion> |
| <exclusion> |
| <groupId>ch.qos.reload4j</groupId> |
| <artifactId>reload4j</artifactId> |
| </exclusion> |
| <exclusion> |
| <groupId>org.slf4j</groupId> |
| <artifactId>slf4j-reload4j</artifactId> |
| </exclusion> |
| </exclusions> |
| </dependency> |
| <dependency> |
| <!-- |
| a missing transitive dependency on JDK9+ (obsoleted by Hadoop-3.3.0+, HADOOP-15775) |
| --> |
| <groupId>javax.activation</groupId> |
| <artifactId>javax.activation-api</artifactId> |
| <version>1.2.0</version> |
| <scope>test</scope> |
| </dependency> |
| <dependency> |
| <groupId>org.apache.hadoop</groupId> |
| <artifactId>hadoop-common</artifactId> |
| <version>${hadoop-three.version}</version> |
| <type>test-jar</type> |
| <exclusions> |
| <exclusion> |
| <groupId>com.sun.jersey</groupId> |
| <artifactId>jersey-core</artifactId> |
| </exclusion> |
| <exclusion> |
| <groupId>com.google.code.findbugs</groupId> |
| <artifactId>jsr305</artifactId> |
| </exclusion> |
| <exclusion> |
| <groupId>org.slf4j</groupId> |
| <artifactId>slf4j-log4j12</artifactId> |
| </exclusion> |
| <exclusion> |
| <groupId>log4j</groupId> |
| <artifactId>log4j</artifactId> |
| </exclusion> |
| <exclusion> |
| <groupId>ch.qos.reload4j</groupId> |
| <artifactId>reload4j</artifactId> |
| </exclusion> |
| <exclusion> |
| <groupId>org.slf4j</groupId> |
| <artifactId>slf4j-reload4j</artifactId> |
| </exclusion> |
| <exclusion> |
| <groupId>org.codehaus.jackson</groupId> |
| <artifactId>*</artifactId> |
| </exclusion> |
| <exclusion> |
| <groupId>javax.servlet.jsp</groupId> |
| <artifactId>jsp-api</artifactId> |
| </exclusion> |
| <exclusion> |
| <groupId>javax.xml.bind</groupId> |
| <artifactId>jaxb-api</artifactId> |
| </exclusion> |
| <exclusion> |
| <groupId>javax.ws.rs</groupId> |
| <artifactId>jsr311-api</artifactId> |
| </exclusion> |
| </exclusions> |
| </dependency> |
| <dependency> |
| <!-- Is this needed? Seems a duplicate of the above dependency but for the |
| classifier--> |
| <groupId>org.apache.hadoop</groupId> |
| <artifactId>hadoop-client</artifactId> |
| <version>${hadoop-three.version}</version> |
| </dependency> |
| <dependency> |
| <groupId>org.apache.hadoop</groupId> |
| <artifactId>hadoop-annotations</artifactId> |
| <version>${hadoop-three.version}</version> |
| </dependency> |
| <!-- This was marked as test dep in earlier pom, but was scoped compile. |
| Where do we actually need it? --> |
| <dependency> |
| <groupId>org.apache.hadoop</groupId> |
| <artifactId>hadoop-minicluster</artifactId> |
| <version>${hadoop-three.version}</version> |
| <exclusions> |
| <!--If we comment this in, a few tests in hbase-mapreduce |
| fail. They depend on jersey-core somehow. But excluding |
| jersey-core here messes up hbase-it because jersey-core |
| implements a 1.x jaxrs Response Interface when we depend |
| on the 2.x Interface... . Letting this jar come in |
| transitively here but will exclude it down in hbase-it. |
| See HBASE-22029. |
| <exclusion> |
| <groupId>com.sun.jersey</groupId> |
| <artifactId>jersey-core</artifactId> |
| </exclusion> |
| --> |
| <exclusion> |
| <groupId>commons-httpclient</groupId> |
| <artifactId>commons-httpclient</artifactId> |
| </exclusion> |
| <exclusion> |
| <groupId>javax.servlet.jsp</groupId> |
| <artifactId>jsp-api</artifactId> |
| </exclusion> |
| <exclusion> |
| <groupId>javax.servlet</groupId> |
| <artifactId>servlet-api</artifactId> |
| </exclusion> |
| <exclusion> |
| <groupId>stax</groupId> |
| <artifactId>stax-api</artifactId> |
| </exclusion> |
| <exclusion> |
| <groupId>com.google.code.findbugs</groupId> |
| <artifactId>jsr305</artifactId> |
| </exclusion> |
| <exclusion> |
| <groupId>org.slf4j</groupId> |
| <artifactId>slf4j-log4j12</artifactId> |
| </exclusion> |
| <exclusion> |
| <groupId>log4j</groupId> |
| <artifactId>log4j</artifactId> |
| </exclusion> |
| <exclusion> |
| <groupId>ch.qos.reload4j</groupId> |
| <artifactId>reload4j</artifactId> |
| </exclusion> |
| <exclusion> |
| <groupId>org.slf4j</groupId> |
| <artifactId>slf4j-reload4j</artifactId> |
| </exclusion> |
| <exclusion> |
| <groupId>org.bouncycastle</groupId> |
| <artifactId>bcprov-jdk15on</artifactId> |
| </exclusion> |
| <exclusion> |
| <groupId>org.bouncycastle</groupId> |
| <artifactId>bcpkix-jdk15on</artifactId> |
| </exclusion> |
| </exclusions> |
| </dependency> |
| <dependency> |
| <groupId>org.apache.hadoop</groupId> |
| <artifactId>hadoop-minikdc</artifactId> |
| <version>${hadoop-three.version}</version> |
| <scope>test</scope> |
| <exclusions> |
| <exclusion> |
| <groupId>org.slf4j</groupId> |
| <artifactId>slf4j-log4j12</artifactId> |
| </exclusion> |
| <exclusion> |
| <groupId>ch.qos.reload4j</groupId> |
| <artifactId>reload4j</artifactId> |
| </exclusion> |
| <exclusion> |
| <groupId>org.slf4j</groupId> |
| <artifactId>slf4j-reload4j</artifactId> |
| </exclusion> |
| <exclusion> |
| <groupId>bouncycastle</groupId> |
| <artifactId>bcprov-jdk15</artifactId> |
| </exclusion> |
| </exclusions> |
| </dependency> |
| <dependency> |
| <groupId>org.apache.hadoop</groupId> |
| <artifactId>hadoop-distcp</artifactId> |
| <version>${hadoop-three.version}</version> |
| </dependency> |
| |
| <dependency> |
| <groupId>org.apache.hadoop</groupId> |
| <artifactId>hadoop-hdfs-client</artifactId> |
| <version>${hadoop-three.version}</version> |
| </dependency> |
| </dependencies> |
| </dependencyManagement> |
| |
| </profile> |
| <!-- profiles for the tests |
| See as well the properties of the project for the values |
| when no profile is active. --> |
| <profile> |
| <!-- Use it to launch all tests in the same JVM --> |
| <id>singleJVMTests</id> |
| <activation> |
| <activeByDefault>false</activeByDefault> |
| </activation> |
| <properties> |
| <surefire.firstPartForkCount>1</surefire.firstPartForkCount> |
| <surefire.skipFirstPart>false</surefire.skipFirstPart> |
| <surefire.skipSecondPart>true</surefire.skipSecondPart> |
| <surefire.firstPartGroups/> |
| </properties> |
| </profile> |
| <profile> |
| <!-- Use it to launch small tests only --> |
| <id>runSmallTests</id> |
| <activation> |
| <activeByDefault>false</activeByDefault> |
| </activation> |
| <properties> |
| <surefire.skipFirstPart>false</surefire.skipFirstPart> |
| <surefire.skipSecondPart>true</surefire.skipSecondPart> |
| <surefire.firstPartGroups>org.apache.hadoop.hbase.testclassification.SmallTests</surefire.firstPartGroups> |
| <surefire.secondPartGroups/> |
| </properties> |
| </profile> |
| <profile> |
| <!-- Use it to launch medium tests only --> |
| <id>runMediumTests</id> |
| <activation> |
| <activeByDefault>false</activeByDefault> |
| </activation> |
| <properties> |
| <surefire.skipFirstPart>false</surefire.skipFirstPart> |
| <surefire.skipSecondPart>true</surefire.skipSecondPart> |
| <surefire.firstPartGroups>org.apache.hadoop.hbase.testclassification.MediumTests</surefire.firstPartGroups> |
| <surefire.secondPartGroups/> |
| </properties> |
| </profile> |
| <profile> |
| <!-- Use it to launch large tests only --> |
| <id>runLargeTests</id> |
| <activation> |
| <activeByDefault>false</activeByDefault> |
| </activation> |
| <properties> |
| <surefire.skipFirstPart>false</surefire.skipFirstPart> |
| <surefire.skipSecondPart>true</surefire.skipSecondPart> |
| <surefire.firstPartGroups>org.apache.hadoop.hbase.testclassification.LargeTests</surefire.firstPartGroups> |
| <surefire.secondPartGroups/> |
| </properties> |
| </profile> |
| <profile> |
| <!-- Use it to launch small & medium tests --> |
| <id>runDevTests</id> |
| <activation> |
| <activeByDefault>false</activeByDefault> |
| </activation> |
| <properties> |
| <surefire.firstPartForkCount>1</surefire.firstPartForkCount> |
| <surefire.skipFirstPart>false</surefire.skipFirstPart> |
| <surefire.skipSecondPart>false</surefire.skipSecondPart> |
| <surefire.firstPartGroups>org.apache.hadoop.hbase.testclassification.SmallTests</surefire.firstPartGroups> |
| <surefire.secondPartGroups>org.apache.hadoop.hbase.testclassification.MediumTests</surefire.secondPartGroups> |
| </properties> |
| </profile> |
| <profile> |
| <!-- Use it to launch all tests --> |
| <id>runAllTests</id> |
| <activation> |
| <activeByDefault>false</activeByDefault> |
| </activation> |
| <properties> |
| <surefire.skipFirstPart>false</surefire.skipFirstPart> |
| <surefire.skipSecondPart>false</surefire.skipSecondPart> |
| <surefire.firstPartGroups>org.apache.hadoop.hbase.testclassification.SmallTests</surefire.firstPartGroups> |
| <surefire.secondPartGroups>org.apache.hadoop.hbase.testclassification.MediumTests,org.apache.hadoop.hbase.testclassification.LargeTests</surefire.secondPartGroups> |
| </properties> |
| </profile> |
| <profile> |
| <id>runMiscTests</id> |
| <activation> |
| <activeByDefault>false</activeByDefault> |
| </activation> |
| <properties> |
| <surefire.skipFirstPart>false</surefire.skipFirstPart> |
| <surefire.skipSecondPart>true</surefire.skipSecondPart> |
| <surefire.firstPartGroups>org.apache.hadoop.hbase.testclassification.MiscTests</surefire.firstPartGroups> |
| <surefire.secondPartGroups/> |
| </properties> |
| </profile> |
| <profile> |
| <id>runCoprocessorTests</id> |
| <activation> |
| <activeByDefault>false</activeByDefault> |
| </activation> |
| <properties> |
| <surefire.firstPartForkCount>1</surefire.firstPartForkCount> |
| <surefire.secondPartForkCount>1</surefire.secondPartForkCount> |
| <surefire.skipFirstPart>false</surefire.skipFirstPart> |
| <surefire.skipSecondPart>true</surefire.skipSecondPart> |
| <surefire.firstPartGroups>org.apache.hadoop.hbase.testclassification.CoprocessorTests</surefire.firstPartGroups> |
| <surefire.secondPartGroups/> |
| </properties> |
| </profile> |
| <profile> |
| <id>runClientTests</id> |
| <activation> |
| <activeByDefault>false</activeByDefault> |
| </activation> |
| <properties> |
| <surefire.firstPartForkCount>1</surefire.firstPartForkCount> |
| <surefire.secondPartForkCount>1</surefire.secondPartForkCount> |
| <surefire.skipFirstPart>false</surefire.skipFirstPart> |
| <surefire.skipSecondPart>true</surefire.skipSecondPart> |
| <surefire.firstPartGroups>org.apache.hadoop.hbase.testclassification.ClientTests</surefire.firstPartGroups> |
| <surefire.secondPartGroups/> |
| </properties> |
| </profile> |
| <profile> |
| <id>runMasterTests</id> |
| <activation> |
| <activeByDefault>false</activeByDefault> |
| </activation> |
| <properties> |
| <surefire.firstPartForkCount>1</surefire.firstPartForkCount> |
| <surefire.secondPartForkCount>1</surefire.secondPartForkCount> |
| <surefire.skipFirstPart>false</surefire.skipFirstPart> |
| <surefire.skipSecondPart>true</surefire.skipSecondPart> |
| <surefire.firstPartGroups>org.apache.hadoop.hbase.testclassification.MasterTests</surefire.firstPartGroups> |
| <surefire.secondPartGroups/> |
| </properties> |
| </profile> |
| <profile> |
| <id>runMapredTests</id> |
| <activation> |
| <activeByDefault>false</activeByDefault> |
| </activation> |
| <properties> |
| <surefire.firstPartForkCount>1</surefire.firstPartForkCount> |
| <surefire.secondPartForkCount>1</surefire.secondPartForkCount> |
| <surefire.skipFirstPart>false</surefire.skipFirstPart> |
| <surefire.skipSecondPart>true</surefire.skipSecondPart> |
| <surefire.firstPartGroups>org.apache.hadoop.hbase.testclassification.MapredTests</surefire.firstPartGroups> |
| <surefire.secondPartGroups/> |
| </properties> |
| </profile> |
| <profile> |
| <id>runMapreduceTests</id> |
| <activation> |
| <activeByDefault>false</activeByDefault> |
| </activation> |
| <properties> |
| <surefire.firstPartForkCount>1</surefire.firstPartForkCount> |
| <surefire.secondPartForkCount>1</surefire.secondPartForkCount> |
| <surefire.skipFirstPart>false</surefire.skipFirstPart> |
| <surefire.skipSecondPart>true</surefire.skipSecondPart> |
| <surefire.firstPartGroups>org.apache.hadoop.hbase.testclassification.MapReduceTests</surefire.firstPartGroups> |
| <surefire.secondPartGroups/> |
| </properties> |
| </profile> |
| <profile> |
| <id>runRegionServerTests</id> |
| <activation> |
| <activeByDefault>false</activeByDefault> |
| </activation> |
| <properties> |
| <surefire.firstPartForkCount>1</surefire.firstPartForkCount> |
| <surefire.secondPartForkCount>1</surefire.secondPartForkCount> |
| <surefire.skipFirstPart>false</surefire.skipFirstPart> |
| <surefire.skipSecondPart>true</surefire.skipSecondPart> |
| <surefire.firstPartGroups>org.apache.hadoop.hbase.testclassification.RegionServerTests</surefire.firstPartGroups> |
| <surefire.secondPartGroups/> |
| </properties> |
| </profile> |
| <profile> |
| <id>runVerySlowMapReduceTests</id> |
| <activation> |
| <activeByDefault>false</activeByDefault> |
| </activation> |
| <properties> |
| <surefire.firstPartForkCount>2</surefire.firstPartForkCount> |
| <surefire.secondPartForkCount>1</surefire.secondPartForkCount> |
| <surefire.skipFirstPart>false</surefire.skipFirstPart> |
| <surefire.skipSecondPart>true</surefire.skipSecondPart> |
| <surefire.firstPartGroups>org.apache.hadoop.hbase.testclassification.VerySlowMapReduceTests</surefire.firstPartGroups> |
| <surefire.secondPartGroups/> |
| </properties> |
| </profile> |
| |
| <profile> |
| <id>runVerySlowRegionServerTests</id> |
| <activation> |
| <activeByDefault>false</activeByDefault> |
| </activation> |
| <properties> |
| <surefire.firstPartForkCount>2</surefire.firstPartForkCount> |
| <surefire.secondPartForkCount>1</surefire.secondPartForkCount> |
| <surefire.skipFirstPart>false</surefire.skipFirstPart> |
| <surefire.skipSecondPart>true</surefire.skipSecondPart> |
| <surefire.firstPartGroups>org.apache.hadoop.hbase.testclassification.VerySlowRegionServerTests</surefire.firstPartGroups> |
| <surefire.secondPartGroups/> |
| </properties> |
| </profile> |
| |
| <profile> |
| <id>runFilterTests</id> |
| <activation> |
| <activeByDefault>false</activeByDefault> |
| </activation> |
| <properties> |
| <surefire.firstPartForkCount>1</surefire.firstPartForkCount> |
| <surefire.secondPartForkCount>1</surefire.secondPartForkCount> |
| <surefire.skipFirstPart>false</surefire.skipFirstPart> |
| <surefire.skipSecondPart>true</surefire.skipSecondPart> |
| <surefire.firstPartGroups>org.apache.hadoop.hbase.testclassification.FilterTests</surefire.firstPartGroups> |
| <surefire.secondPartGroups/> |
| </properties> |
| </profile> |
| <profile> |
| <id>runIOTests</id> |
| <activation> |
| <activeByDefault>false</activeByDefault> |
| </activation> |
| <properties> |
| <surefire.firstPartForkCount>1</surefire.firstPartForkCount> |
| <surefire.secondPartForkCount>1</surefire.secondPartForkCount> |
| <surefire.skipFirstPart>false</surefire.skipFirstPart> |
| <surefire.skipSecondPart>true</surefire.skipSecondPart> |
| <surefire.firstPartGroups>org.apache.hadoop.hbase.testclassification.IOTests</surefire.firstPartGroups> |
| <surefire.secondPartGroups/> |
| </properties> |
| </profile> |
| <profile> |
| <id>runRestTests</id> |
| <activation> |
| <activeByDefault>false</activeByDefault> |
| </activation> |
| <properties> |
| <surefire.firstPartForkCount>1</surefire.firstPartForkCount> |
| <surefire.secondPartForkCount>1</surefire.secondPartForkCount> |
| <surefire.skipFirstPart>false</surefire.skipFirstPart> |
| <surefire.skipSecondPart>true</surefire.skipSecondPart> |
| <surefire.firstPartGroups>org.apache.hadoop.hbase.testclassification.RestTests</surefire.firstPartGroups> |
| <surefire.secondPartGroups/> |
| </properties> |
| </profile> |
| <profile> |
| <id>runRPCTests</id> |
| <activation> |
| <activeByDefault>false</activeByDefault> |
| </activation> |
| <properties> |
| <surefire.firstPartForkCount>1</surefire.firstPartForkCount> |
| <surefire.secondPartForkCount>1</surefire.secondPartForkCount> |
| <surefire.skipFirstPart>false</surefire.skipFirstPart> |
| <surefire.skipSecondPart>true</surefire.skipSecondPart> |
| <surefire.firstPartGroups>org.apache.hadoop.hbase.testclassification.RPCTests</surefire.firstPartGroups> |
| <surefire.secondPartGroups/> |
| </properties> |
| </profile> |
| <profile> |
| <id>runReplicationTests</id> |
| <activation> |
| <activeByDefault>false</activeByDefault> |
| </activation> |
| <properties> |
| <surefire.firstPartForkCount>1</surefire.firstPartForkCount> |
| <surefire.secondPartForkCount>1</surefire.secondPartForkCount> |
| <surefire.skipFirstPart>false</surefire.skipFirstPart> |
| <surefire.skipSecondPart>true</surefire.skipSecondPart> |
| <surefire.firstPartGroups>org.apache.hadoop.hbase.testclassification.ReplicationTests</surefire.firstPartGroups> |
| <surefire.secondPartGroups/> |
| </properties> |
| </profile> |
| <profile> |
| <id>runSecurityTests</id> |
| <activation> |
| <activeByDefault>false</activeByDefault> |
| </activation> |
| <properties> |
| <surefire.firstPartForkCount>1</surefire.firstPartForkCount> |
| <surefire.secondPartForkCount>1</surefire.secondPartForkCount> |
| <surefire.skipFirstPart>false</surefire.skipFirstPart> |
| <surefire.skipSecondPart>true</surefire.skipSecondPart> |
| <surefire.firstPartGroups>org.apache.hadoop.hbase.testclassification.SecurityTests</surefire.firstPartGroups> |
| <surefire.secondPartGroups/> |
| </properties> |
| </profile> |
| <profile> |
| <id>runFlakeyTests</id> |
| <activation> |
| <activeByDefault>false</activeByDefault> |
| </activation> |
| <properties> |
| <surefire.firstPartForkCount>1</surefire.firstPartForkCount> |
| <surefire.secondPartForkCount>1</surefire.secondPartForkCount> |
| <surefire.skipFirstPart>false</surefire.skipFirstPart> |
| <surefire.skipSecondPart>true</surefire.skipSecondPart> |
| <surefire.firstPartGroups>org.apache.hadoop.hbase.testclassification.FlakeyTests</surefire.firstPartGroups> |
| <surefire.secondPartGroups/> |
| </properties> |
| </profile> |
| <profile> |
| <id>runZKTests</id> |
| <activation> |
| <activeByDefault>false</activeByDefault> |
| </activation> |
| <properties> |
| <surefire.firstPartForkCount>1</surefire.firstPartForkCount> |
| <surefire.secondPartForkCount>1</surefire.secondPartForkCount> |
| <surefire.skipFirstPart>false</surefire.skipFirstPart> |
| <surefire.skipSecondPart>true</surefire.skipSecondPart> |
| <surefire.firstPartGroups>org.apache.hadoop.hbase.testclassification.ZKTests</surefire.firstPartGroups> |
| <surefire.secondPartGroups/> |
| </properties> |
| </profile> |
| <profile> |
| <id>runRSGroupTests</id> |
| <activation> |
| <activeByDefault>false</activeByDefault> |
| </activation> |
| <properties> |
| <surefire.firstPartForkCount>1</surefire.firstPartForkCount> |
| <surefire.secondPartForkCount>1</surefire.secondPartForkCount> |
| <surefire.skipFirstPart>false</surefire.skipFirstPart> |
| <surefire.skipSecondPart>true</surefire.skipSecondPart> |
| <surefire.firstPartGroups>org.apache.hadoop.hbase.testclassification.RSGroupTests</surefire.firstPartGroups> |
| <surefire.secondPartGroups/> |
| </properties> |
| </profile> |
| |
| <profile> |
| <!-- Use it to launch tests locally--> |
| <id>localTests</id> |
| <activation> |
| <property> |
| <name>test</name> |
| </property> |
| </activation> |
| <properties> |
| <surefire.provider>surefire-junit4</surefire.provider> |
| <surefire.skipFirstPart>false</surefire.skipFirstPart> |
| <surefire.skipSecondPart>true</surefire.skipSecondPart> |
| <surefire.firstPartGroups/> |
| </properties> |
| </profile> |
| <!-- Profile for running clover. You need to have a clover license under ~/.clover.license for ${clover.version} |
| or you can provide the license with -Dmaven.clover.licenseLocation=/path/to/license. Committers can find |
| the license under https://svn.apache.org/repos/private/committers/donated-licenses/clover/ |
| The report will be generated under target/site/clover/index.html when you run |
| MAVEN_OPTS="-Xmx2048m" mvn clean package -Pclover site --> |
| <profile> |
| <id>clover</id> |
| <activation> |
| <activeByDefault>false</activeByDefault> |
| <property> |
| <name>clover</name> |
| </property> |
| </activation> |
| <properties> |
| <maven.clover.licenseLocation>${user.home}/.clover.license</maven.clover.licenseLocation> |
| </properties> |
| <build> |
| <plugins> |
| <!-- When Clover is active, we need to add it as a dependency for the javadoc plugin, or |
| our instrumented classes for the doclet will fail |
| --> |
| <plugin> |
| <groupId>org.apache.maven.plugins</groupId> |
| <artifactId>maven-javadoc-plugin</artifactId> |
| <dependencies> |
| <dependency> |
| <groupId>com.atlassian.maven.plugins</groupId> |
| <artifactId>maven-clover2-plugin</artifactId> |
| <version>${clover.version}</version> |
| </dependency> |
| </dependencies> |
| </plugin> |
| <plugin> |
| <groupId>com.atlassian.maven.plugins</groupId> |
| <artifactId>maven-clover2-plugin</artifactId> |
| <version>${clover.version}</version> |
| <configuration> |
| <includesAllSourceRoots>true</includesAllSourceRoots> |
| <includesTestSourceRoots>true</includesTestSourceRoots> |
| <targetPercentage>50%</targetPercentage> |
| <generateHtml>true</generateHtml> |
| <generateXml>true</generateXml> |
| <excludes> |
| <exclude>**/generated/**</exclude> |
| </excludes> |
| </configuration> |
| <executions> |
| <execution> |
| <id>clover-setup</id> |
| <goals> |
| <goal>setup</goal> |
| </goals> |
| <phase>process-sources</phase> |
| </execution> |
| <execution> |
| <id>clover</id> |
| <goals> |
| <goal>clover</goal> |
| </goals> |
| <phase>site</phase> |
| </execution> |
| </executions> |
| </plugin> |
| </plugins> |
| </build> |
| </profile> |
| <profile> |
| <!-- Used by the website generation script on jenkins to |
| do a local install of the jars we need to run a normal |
| site build w/o forking. |
| --> |
| <id>site-install-step</id> |
| <properties> |
| <skipTests>true</skipTests> |
| <maven.javadoc.skip>true</maven.javadoc.skip> |
| <enforcer.skip>true</enforcer.skip> |
| <checkstyle.skip>true</checkstyle.skip> |
| <spotbugs.skip>true</spotbugs.skip> |
| <warbucks.skip>true</warbucks.skip> |
| </properties> |
| </profile> |
| <profile> |
| <!-- Used by the website generation script on jenkins to |
| mitigate the impact of unneeded build forks while building |
| our javadocs. |
| --> |
| <id>site-build-step</id> |
| <properties> |
| <skipTests>true</skipTests> |
| <enforcer.skip>true</enforcer.skip> |
| <maven.main.skip>true</maven.main.skip> |
| <maven.test.skip>true</maven.test.skip> |
| <warbucks.skip>true</warbucks.skip> |
| <protoc.skip>true</protoc.skip> |
| <remoteresources.skip>true</remoteresources.skip> |
| </properties> |
| </profile> |
| <profile> |
| <id>eclipse-specific</id> |
| <activation> |
| <property> |
| <name>m2e.version</name> |
| </property> |
| </activation> |
| <build> |
| <pluginManagement> |
| <plugins> |
| <!-- General config for eclipse classpath/settings --> |
| <plugin> |
| <groupId>org.apache.maven.plugins</groupId> |
| <artifactId>maven-eclipse-plugin</artifactId> |
| <version>${maven.eclipse.version}</version> |
| </plugin> |
| <!--This plugin's configuration is used to store Eclipse m2e settings |
| only. It has no influence on the Maven build itself. m2e does not |
| provide any safeguards against rogue maven plugins that leak |
| classloaders, modify random files inside workspace or throw nasty |
| exceptions to fail the build. |
| Top level doesn't do any specific configuration currently - left |
| to modules to decide what they want to bind, sans those plugins |
| defined in this pom. --> |
| <plugin> |
| <groupId>org.eclipse.m2e</groupId> |
| <artifactId>lifecycle-mapping</artifactId> |
| <version>${lifecycle.mapping.version}</version> |
| <configuration> |
| <lifecycleMappingMetadata> |
| <pluginExecutions> |
| <pluginExecution> |
| <pluginExecutionFilter> |
| <groupId>org.jacoco</groupId> |
| <artifactId>jacoco-maven-plugin</artifactId> |
| <versionRange>[0.6.2.201302030002,)</versionRange> |
| <goals> |
| <goal>prepare-agent</goal> |
| </goals> |
| </pluginExecutionFilter> |
| <action> |
| <ignore/> |
| </action> |
| </pluginExecution> |
| <pluginExecution> |
| <pluginExecutionFilter> |
| <groupId>org.apache.maven.plugins</groupId> |
| <artifactId>maven-enforcer-plugin</artifactId> |
| <versionRange>${enforcer.version}</versionRange> |
| <goals> |
| <goal>enforce</goal> |
| </goals> |
| </pluginExecutionFilter> |
| <action> |
| <ignore/> |
| </action> |
| </pluginExecution> |
| <pluginExecution> |
| <pluginExecutionFilter> |
| <groupId>org.apache.maven.plugins</groupId> |
| <artifactId>maven-remote-resources-plugin</artifactId> |
| <versionRange>[1.5,)</versionRange> |
| <goals> |
| <goal>process</goal> |
| <goal>bundle</goal> |
| </goals> |
| </pluginExecutionFilter> |
| <action> |
| <ignore/> |
| </action> |
| </pluginExecution> |
| <pluginExecution> |
| <pluginExecutionFilter> |
| <groupId>org.codehaus.mojo</groupId> |
| <artifactId>buildnumber-maven-plugin</artifactId> |
| <versionRange>[1.3,)</versionRange> |
| <goals> |
| <goal>create-timestamp</goal> |
| </goals> |
| </pluginExecutionFilter> |
| <action> |
| <execute> |
| <runOnConfiguration>true</runOnConfiguration> |
| <runOnIncremental>true</runOnIncremental> |
| </execute> |
| </action> |
| </pluginExecution> |
| </pluginExecutions> |
| </lifecycleMappingMetadata> |
| </configuration> |
| </plugin> |
| </plugins> |
| </pluginManagement> |
| </build> |
| </profile> |
| <profile> |
| <id>aarch64</id> |
| <activation> |
| <os> |
| <family>linux</family> |
| <arch>aarch64</arch> |
| </os> |
| </activation> |
| <properties> |
| <external.protobuf.groupid>org.openlabtesting.protobuf</external.protobuf.groupid> |
| </properties> |
| </profile> |
| </profiles> |
| </project> |