Preparing development version 2.4.4-SNAPSHOT
[hbase.git] / hbase-build-configuration / pom.xml
blobb060d974542554471518ee517cd2c3140ddb570c
1 <?xml version="1.0"?>
2 <project xmlns="https://maven.apache.org/POM/4.0.0" xmlns:xsi="https://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="https://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd">
3   <!--
4   /**
5    * Licensed to the Apache Software Foundation (ASF) under one
6    * or more contributor license agreements.  See the NOTICE file
7    * distributed with this work for additional information
8    * regarding copyright ownership.  The ASF licenses this file
9    * to you under the Apache License, Version 2.0 (the
10    * "License"); you may not use this file except in compliance
11    * with the License.  You may obtain a copy of the License at
12    *
13    *     http://www.apache.org/licenses/LICENSE-2.0
14    *
15    * Unless required by applicable law or agreed to in writing, software
16    * distributed under the License is distributed on an "AS IS" BASIS,
17    * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
18    * See the License for the specific language governing permissions and
19    * limitations under the License.
20    */
21   -->
22   <modelVersion>4.0.0</modelVersion>
23   <parent>
24     <artifactId>hbase</artifactId>
25     <groupId>org.apache.hbase</groupId>
26     <version>2.4.4-SNAPSHOT</version>
27     <relativePath>..</relativePath>
28   </parent>
30   <artifactId>hbase-build-configuration</artifactId>
31   <name>Apache HBase - Build Configuration</name>
32   <description>Configure the build-support artifacts for maven build</description>
34   <packaging>pom</packaging>
35   <build>
36     <plugins>
37       <plugin>
38         <groupId>org.apache.maven.plugins</groupId>
39         <artifactId>maven-site-plugin</artifactId>
40         <configuration>
41           <skip>true</skip>
42         </configuration>
43       </plugin>
44       <plugin>
45         <!--Make it so assembly:single does nothing in here-->
46         <artifactId>maven-assembly-plugin</artifactId>
47         <configuration>
48           <skipAssembly>true</skipAssembly>
49         </configuration>
50       </plugin>
51     </plugins>
52   </build>
53   <dependencies>
54     <dependency>
55       <groupId>org.apache.hbase</groupId>
56       <artifactId>hbase-annotations</artifactId>
57       <type>test-jar</type>
58       <scope>test</scope>
59     </dependency>
60     <dependency>
61       <groupId>org.apache.yetus</groupId>
62       <artifactId>audience-annotations</artifactId>
63     </dependency>
64   </dependencies>
66   <profiles>
67     <profile>
68       <id>errorProne</id>
69       <activation>
70         <activeByDefault>false</activeByDefault>
71       </activation>
72       <properties>
73         <!-- https://errorprone.info/docs/installation Maven section has details -->
74         <!-- required when compiling with JDK 8 -->
75         <javac.version>9+181-r4173-1</javac.version>
76       </properties>
77       <dependencies>
78         <dependency>
79           <groupId>com.google.errorprone</groupId>
80           <artifactId>error_prone_core</artifactId>
81           <version>${error-prone.version}</version>
82           <scope>provided</scope>
83           <exclusions>
84             <exclusion>
85               <groupId>com.google.code.findbugs</groupId>
86               <artifactId>jsr305</artifactId>
87             </exclusion>
88           </exclusions>
89         </dependency>
90         <dependency>
91           <groupId>com.google.errorprone</groupId>
92           <artifactId>javac</artifactId>
93           <version>${javac.version}</version>
94           <scope>provided</scope>
95         </dependency>
96       </dependencies>
97       <build>
98         <plugins>
99           <!-- Turn on error-prone -->
100           <plugin>
101             <groupId>org.apache.maven.plugins</groupId>
102             <artifactId>maven-compiler-plugin</artifactId>
103             <configuration>
104               <source>${compileSource}</source>
105               <target>${compileSource}</target>
106               <!-- required when compiling with JDK 8 -->
107               <fork>true</fork>
108               <showWarnings>true</showWarnings>
109               <compilerArgs>
110                 <arg>-XDcompilePolicy=simple</arg>
111                 <!-- All -Xep need to be on single line see: https://github.com/google/error-prone/pull/1115 -->
112                 <arg>-Xplugin:ErrorProne -XepDisableWarningsInGeneratedCode -Xep:FallThrough:OFF -Xep:MutablePublicArray:OFF -Xep:ClassNewInstance:ERROR -Xep:MissingDefault:ERROR</arg>
113                 <!-- Required when compiling with JDK 8 -->
114                 <arg>-J-Xbootclasspath/p:${settings.localRepository}/com/google/errorprone/javac/${javac.version}/javac-${javac.version}.jar</arg>
115               </compilerArgs>
116               <annotationProcessorPaths>
117                 <path>
118                   <groupId>com.google.errorprone</groupId>
119                   <artifactId>error_prone_core</artifactId>
120                   <version>${error-prone.version}</version>
121                 </path>
122               </annotationProcessorPaths>
123             </configuration>
124           </plugin>
125         </plugins>
126       </build>
127     </profile>
128   </profiles>
129 </project>